Expand my Community achievements bar.

Help shape the future of AI assistance by participating in this quick card sorting activity. Your input will help create a more effective system that better serves your needs and those of your colleagues.
SOLVED

Launch Environment - Async always on

Avatar

Level 6

Hi All,

I was wondering if anyone else is having the same issue. I went into my Environments and they are all set on async and when I go to turn off async and save it I go back into the specific environment and its turned on again. Is this a glitch or should I not worry about it.

Also, what are all the pros and cons of using async?

Pros:

  • non-blocking
  • faster performance

Cons:

  • Adobe Target; experience personalization
  • Don't use page bottom event type

1493696_pastedImage_2.png

1 Accepted Solution

Avatar

Correct answer by
Community Advisor

I see the same thing.  My guess is that they want to encourage async deployment as the default best practice (A stance with which I happen to agree).

I am also pretty much in agreement with your list of pros and cons. 

The point about _satellite.pageBottom() is a little nuanced though.  My understanding is that you _could_ write rules that fire when _satellite.pageBottom() is called, but with an asynchronous embed of the header code, you don't have any guarantee that the _satellite object will be in existence by the time that the footer embed is rendered.  I can't really think of a reason why you'd call _satellite.pageBottom() outside of its intention as a marker of the bottom of the body being hit, but maybe it will come in handy some day...

It is also my understanding that the Launch library itself is no different if you choose synchronous or asynchronous deployment.

View solution in original post

9 Replies

Avatar

Correct answer by
Community Advisor

I see the same thing.  My guess is that they want to encourage async deployment as the default best practice (A stance with which I happen to agree).

I am also pretty much in agreement with your list of pros and cons. 

The point about _satellite.pageBottom() is a little nuanced though.  My understanding is that you _could_ write rules that fire when _satellite.pageBottom() is called, but with an asynchronous embed of the header code, you don't have any guarantee that the _satellite object will be in existence by the time that the footer embed is rendered.  I can't really think of a reason why you'd call _satellite.pageBottom() outside of its intention as a marker of the bottom of the body being hit, but maybe it will come in handy some day...

It is also my understanding that the Launch library itself is no different if you choose synchronous or asynchronous deployment.

Avatar

Employee

You should not worry about it.  Those are deployment instructions, they are not a setting that is connected to how you actually deploy it.  And we did recently change it to show async by default (we are encouraging people to make that move), but it's still just instructions.

You have Target on your Cons list, I don't think it belongs there.  Launch supports asynchronous deploys of Target.  With a little effort outside of Launch you can also do it without any flicker (instructions here).

The Launch Library is the same whether you choose to deploy it sync or async.

Finally, _satellite.pageBottom is essentially just a Direct Call with a special name.  And in async deploy scenarios you should not be building rules to fire on Page Bottom since the timing is unknowable and unreliable in async deploys.  You can still use it (and if you do, Launch will string things together in their logical order), but the timing will be messed up and it's not recommended.

Avatar

Level 6

In regards to Target, Glad to hear that it's not a con as we will be implementing it in a few months. and thanks for the link to the target doc.

Avatar

Level 1

So what is the best practice event to use for a General / All Pages Rule with Launch? The new Launch training has a Page Load - Page Bottom event - Which Page Load event would you consider best practice to use when selecting to load asynchronous?

Avatar

Employee

The unsatisfying answer is that it depends on your use cases.  On the product team, we use "Library Loaded - Page Top" for all our basic demos.

Avatar

Level 1

Looks like the link you have provided to handle the flicker in Target is expired. It would be great if you can post the updated link.

Thanks

Bharath

Avatar

Employee

Thanks, updated the link above =)