5 Replies Latest reply on Jul 19, 2018 3:46 PM by thebenrobb

    Launch Environment - Async always on

    stavares@esri Level 2

      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

       

        • 1. Re: Launch Environment - Async always on
          stewarts16448458 Level 4

          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.

          2 people found this helpful
          • 2. Re: Launch Environment - Async always on
            thebenrobb Adobe 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.

            3 people found this helpful
            • 3. Re: Launch Environment - Async always on
              stavares@esri Level 2

              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.

              • 4. Re: Launch Environment - Async always on
                adls vlaba19774477

                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?

                • 5. Re: Launch Environment - Async always on
                  thebenrobb Adobe 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.