adaptiva.com Open in urlscan Pro
199.60.103.67  Public Scan

Submitted URL: https://d2r5-m04.na1.hubspotlinks.com/Ctc/UB+113/d2r5-M04/VW9-rt8wRcygW85lP8_5RsXxgW65wf3Z59z6__N8yKgBR5nXHsW50kH_H6lZ3p2W5b4txB6JryDl...
Effective URL: https://adaptiva.com/blog/how-ring-deployments-can-supercharge-your-patch-strategy?utm_campaign=Subscription%20Campai...
Submission: On February 16 via api from US — Scanned from DE

Form analysis 8 forms found in the DOM

<form data-hs-cf-bound="true">
  <fieldset>
    <legend class="visuallyhidden">Consent Selection</legend>
    <div id="CybotCookiebotDialogBodyFieldsetInnerContainer">
      <div class="CybotCookiebotDialogBodyLevelButtonWrapper"><label class="CybotCookiebotDialogBodyLevelButtonLabel" for="CybotCookiebotDialogBodyLevelButtonNecessary"><strong
            class="CybotCookiebotDialogBodyLevelButtonDescription">Necessary</strong></label>
        <div class="CybotCookiebotDialogBodyLevelButtonSliderWrapper CybotCookiebotDialogBodyLevelButtonSliderWrapperDisabled"><input type="checkbox" id="CybotCookiebotDialogBodyLevelButtonNecessary"
            class="CybotCookiebotDialogBodyLevelButton CybotCookiebotDialogBodyLevelButtonDisabled" disabled="disabled" checked="checked"> <span class="CybotCookiebotDialogBodyLevelButtonSlider"></span></div>
      </div>
      <div class="CybotCookiebotDialogBodyLevelButtonWrapper"><label class="CybotCookiebotDialogBodyLevelButtonLabel" for="CybotCookiebotDialogBodyLevelButtonPreferences"><strong
            class="CybotCookiebotDialogBodyLevelButtonDescription">Preferences</strong></label>
        <div class="CybotCookiebotDialogBodyLevelButtonSliderWrapper"><input type="checkbox" id="CybotCookiebotDialogBodyLevelButtonPreferences" class="CybotCookiebotDialogBodyLevelButton CybotCookiebotDialogBodyLevelConsentCheckbox"
            data-target="CybotCookiebotDialogBodyLevelButtonPreferencesInline" checked="checked" tabindex="0"> <span class="CybotCookiebotDialogBodyLevelButtonSlider"></span></div>
      </div>
      <div class="CybotCookiebotDialogBodyLevelButtonWrapper"><label class="CybotCookiebotDialogBodyLevelButtonLabel" for="CybotCookiebotDialogBodyLevelButtonStatistics"><strong
            class="CybotCookiebotDialogBodyLevelButtonDescription">Statistics</strong></label>
        <div class="CybotCookiebotDialogBodyLevelButtonSliderWrapper"><input type="checkbox" id="CybotCookiebotDialogBodyLevelButtonStatistics" class="CybotCookiebotDialogBodyLevelButton CybotCookiebotDialogBodyLevelConsentCheckbox"
            data-target="CybotCookiebotDialogBodyLevelButtonStatisticsInline" checked="checked" tabindex="0"> <span class="CybotCookiebotDialogBodyLevelButtonSlider"></span></div>
      </div>
      <div class="CybotCookiebotDialogBodyLevelButtonWrapper"><label class="CybotCookiebotDialogBodyLevelButtonLabel" for="CybotCookiebotDialogBodyLevelButtonMarketing"><strong
            class="CybotCookiebotDialogBodyLevelButtonDescription">Marketing</strong></label>
        <div class="CybotCookiebotDialogBodyLevelButtonSliderWrapper"><input type="checkbox" id="CybotCookiebotDialogBodyLevelButtonMarketing" class="CybotCookiebotDialogBodyLevelButton CybotCookiebotDialogBodyLevelConsentCheckbox"
            data-target="CybotCookiebotDialogBodyLevelButtonMarketingInline" checked="checked" tabindex="0"> <span class="CybotCookiebotDialogBodyLevelButtonSlider"></span></div>
      </div>
    </div>
  </fieldset>
</form>

<form data-hs-cf-bound="true"><input type="checkbox" id="CybotCookiebotDialogBodyLevelButtonNecessaryInline" class="CybotCookiebotDialogBodyLevelButton CybotCookiebotDialogBodyLevelButtonDisabled" disabled="disabled" checked="checked"> <span
    class="CybotCookiebotDialogBodyLevelButtonSlider"></span></form>

<form data-hs-cf-bound="true"><input type="checkbox" id="CybotCookiebotDialogBodyLevelButtonPreferencesInline" class="CybotCookiebotDialogBodyLevelButton CybotCookiebotDialogBodyLevelConsentCheckbox"
    data-target="CybotCookiebotDialogBodyLevelButtonPreferences" checked="checked" tabindex="0"> <span class="CybotCookiebotDialogBodyLevelButtonSlider"></span></form>

<form data-hs-cf-bound="true"><input type="checkbox" id="CybotCookiebotDialogBodyLevelButtonStatisticsInline" class="CybotCookiebotDialogBodyLevelButton CybotCookiebotDialogBodyLevelConsentCheckbox"
    data-target="CybotCookiebotDialogBodyLevelButtonStatistics" checked="checked" tabindex="0"> <span class="CybotCookiebotDialogBodyLevelButtonSlider"></span></form>

<form data-hs-cf-bound="true"><input type="checkbox" id="CybotCookiebotDialogBodyLevelButtonMarketingInline" class="CybotCookiebotDialogBodyLevelButton CybotCookiebotDialogBodyLevelConsentCheckbox"
    data-target="CybotCookiebotDialogBodyLevelButtonMarketing" checked="checked" tabindex="0"> <span class="CybotCookiebotDialogBodyLevelButtonSlider"></span></form>

<form class="CybotCookiebotDialogBodyLevelButtonSliderWrapper" data-hs-cf-bound="true"><input type="checkbox" id="CybotCookiebotDialogBodyContentCheckboxPersonalInformation" class="CybotCookiebotDialogBodyLevelButton"> <span
    class="CybotCookiebotDialogBodyLevelButtonSlider"></span></form>

GET /home/search/

<form id="cludo-search-form" method="get" action="/home/search/" data-hs-cf-bound="true"><label class="search-label screen-reader-text" for="s">Search for:</label> <input id="s" class="search-field w-input" autocomplete="off" name="q" type="text"
    value="" placeholder="Search" aria-label="Search Site"> <input id="searchsubmit" class="search-button w-button" type="submit" value="Search"><button type="button" class="cludo-voice-icon" aria-label="Search by voice"><svg version="1.1"
      xmlns="http://www.w3.org/2000/svg" x="0" y="0" viewBox="0 0 93.44 134.88">
      <g>
        <path stroke-width="0"
          d="M 50.04 100.45 V 124.56 C 50.04 126.39 48.55 127.88 46.72 127.88 C 44.89 127.88 43.4 126.39 43.4 124.56 V 100.45 C 33.24 99.64 24.08 95.15 17.26 88.33 C 9.69 80.77 5 70.34 5 58.87 C 5 57.04 6.49 55.55 8.32 55.55 S 11.64 57.04 11.64 58.87 C 11.64 68.51 15.59 77.28 21.95 83.64 C 28.31 90 37.08 93.95 46.72 93.95 H 46.72 C 56.36 93.95 65.13 90 71.49 83.64 C 77.85 77.28 81.8 68.51 81.8 58.87 C 81.8 57.04 83.29 55.55 85.12 55.55 S 88.44 57.04 88.44 58.87 C 88.44 70.35 83.75 80.78 76.19 88.34 C 69.36 95.16 60.2 99.64 50.04 100.45 L 50.04 100.45 Z M 46.94 5 C 53.32 5 59.12 7.61 63.32 11.81 C 67.52 16.01 70.13 21.81 70.13 28.19 V 58.19 C 70.13 64.57 67.52 70.37 63.32 74.57 C 59.12 78.77 53.32 81.38 46.94 81.38 S 34.76 78.77 30.56 74.57 C 26.36 70.37 23.75 64.57 23.75 58.19 V 28.19 C 23.75 21.81 26.36 16.01 30.56 11.81 C 34.76 7.61 40.56 5 46.94 5 L 46.94 5 Z M 58.62 16.51 C 55.62 13.51 51.48 11.65 46.94 11.65 C 42.39 11.65 38.26 13.51 35.26 16.51 C 32.26 19.51 30.4 23.65 30.4 28.19 V 58.19 C 30.4 62.74 32.26 66.87 35.26 69.87 C 38.26 72.87 42.4 74.73 46.94 74.73 C 51.49 74.73 55.62 72.87 58.62 69.87 C 61.62 66.87 63.48 62.73 63.48 58.19 V 28.19 C 63.49 23.64 61.62 19.51 58.62 16.51 L 58.62 16.51 Z">
        </path>
      </g>
    </svg></button></form>

GET /home/search/

<form id="cludo-search-form" method="get" action="/home/search/" data-hs-cf-bound="true"><label class="search-label screen-reader-text" for="s">Search for:</label> <input id="s" class="search-field w-input" autocomplete="off" name="q" type="text"
    value="" placeholder="Search" aria-label="Search Site"> <input id="searchsubmit" class="search-button w-button" type="submit" value="Search"><button type="button" class="cludo-voice-icon" aria-label="Search by voice"><svg version="1.1"
      xmlns="http://www.w3.org/2000/svg" x="0" y="0" viewBox="0 0 93.44 134.88">
      <g>
        <path stroke-width="0"
          d="M 50.04 100.45 V 124.56 C 50.04 126.39 48.55 127.88 46.72 127.88 C 44.89 127.88 43.4 126.39 43.4 124.56 V 100.45 C 33.24 99.64 24.08 95.15 17.26 88.33 C 9.69 80.77 5 70.34 5 58.87 C 5 57.04 6.49 55.55 8.32 55.55 S 11.64 57.04 11.64 58.87 C 11.64 68.51 15.59 77.28 21.95 83.64 C 28.31 90 37.08 93.95 46.72 93.95 H 46.72 C 56.36 93.95 65.13 90 71.49 83.64 C 77.85 77.28 81.8 68.51 81.8 58.87 C 81.8 57.04 83.29 55.55 85.12 55.55 S 88.44 57.04 88.44 58.87 C 88.44 70.35 83.75 80.78 76.19 88.34 C 69.36 95.16 60.2 99.64 50.04 100.45 L 50.04 100.45 Z M 46.94 5 C 53.32 5 59.12 7.61 63.32 11.81 C 67.52 16.01 70.13 21.81 70.13 28.19 V 58.19 C 70.13 64.57 67.52 70.37 63.32 74.57 C 59.12 78.77 53.32 81.38 46.94 81.38 S 34.76 78.77 30.56 74.57 C 26.36 70.37 23.75 64.57 23.75 58.19 V 28.19 C 23.75 21.81 26.36 16.01 30.56 11.81 C 34.76 7.61 40.56 5 46.94 5 L 46.94 5 Z M 58.62 16.51 C 55.62 13.51 51.48 11.65 46.94 11.65 C 42.39 11.65 38.26 13.51 35.26 16.51 C 32.26 19.51 30.4 23.65 30.4 28.19 V 58.19 C 30.4 62.74 32.26 66.87 35.26 69.87 C 38.26 72.87 42.4 74.73 46.94 74.73 C 51.49 74.73 55.62 72.87 58.62 69.87 C 61.62 66.87 63.48 62.73 63.48 58.19 V 28.19 C 63.49 23.64 61.62 19.51 58.62 16.51 L 58.62 16.51 Z">
        </path>
      </g>
    </svg></button></form>

Text Content

Powered by Cookiebot
 * Consent
 * Details
 * [#IABV2SETTINGS#]
 * About


THIS WEBSITE USES COOKIES AND TRANSFERS DATA TO THE USA

This website stores cookies on your computer. These cookies are used to collect
information about how you interact with our website and allow us to remember
you. We use this information to improve and customize your browsing experience
and for analytics and metrics about our visitors both on this website and other
media. To find out more about the cookies we use, see our Privacy Policy. If you
decline, your information won’t be tracked when you visit this website. A single
cookie will be used in your browser to remember your preference, not to be
tracked.  Our website is operated by tools from companies based in the USA.
These tools may transfer your personal information to the US servers of these
companies. EU data protection law (GDPR) requires your consent to transfer
personal data outside Europe.  By using our site, signing up for email
communication, using our other products and services, etc., you consent to and
accept the practices described in this Policy.
Consent Selection
Necessary

Preferences

Statistics

Marketing

Show details
 * Necessary 21
   
   Necessary cookies help make a website usable by enabling basic functions like
   page navigation and access to secure areas of the website. The website cannot
   function properly without these cookies.
    * Cookiebot
      2
      Learn more about this provider
      CookieConsentStores the user's cookie consent state for the current domain
      Expiry: 1 yearType: HTTP
      1.gifUsed to count the number of sessions to the website, necessary for
      optimizing CMP product delivery.
      Expiry: SessionType: Pixel
    * Google
      2
      Learn more about this provider
      test_cookiePending
      Expiry: 1 dayType: HTTP
      _GRECAPTCHAPending
      Expiry: 180 daysType: HTTP
    * Hubspot
      5
      Learn more about this provider
      rc::aThis cookie is used to distinguish between humans and bots. This is
      beneficial for the website, in order to make valid reports on the use of
      their website.
      Expiry: PersistentType: HTML
      rc::bThis cookie is used to distinguish between humans and bots.
      Expiry: SessionType: HTML
      rc::cThis cookie is used to distinguish between humans and bots.
      Expiry: SessionType: HTML
      rc::fThis cookie is used to distinguish between humans and bots.
      Expiry: PersistentType: HTML
      _cfuvidPending
      Expiry: SessionType: HTTP
    * LinkedIn
      3
      Learn more about this provider
      bcookiePending
      Expiry: 1 yearType: HTTP
      li_gcPending
      Expiry: 180 daysType: HTTP
      bscookiePending
      Expiry: 1 yearType: HTTP
    * MarketLinc
      2
      Learn more about this provider
      AWSELBUsed to distribute traffic to the website on several servers in
      order to optimise response times.
      Expiry: SessionType: HTTP
      AWSELBCORSRegisters which server-cluster is serving the visitor. This is
      used in context with load balancing, in order to optimize user experience.
      Expiry: SessionType: HTTP
    * adaptiva.com
      hubspot.com
      
      2
      __cfruid [x2]This cookie is a part of the services provided by Cloudflare
      - Including load-balancing, deliverance of website content and serving DNS
      connection for website operators.
      Expiry: SessionType: HTTP
    * adaptiva.com
      hubspot.com
      techtarget.com
      
      4
      __cf_bm [x4]This cookie is used to distinguish between humans and bots.
      This is beneficial for the website, in order to make valid reports on the
      use of their website.
      Expiry: 1 dayType: HTTP
    * widget.sndcdn.com
      1
      sc_anonymous_idUsed in context with the 3D-view-function on the website.
      Expiry: 10 yearsType: HTTP

 * Preferences 5
   
   Preference cookies enable a website to remember information that changes the
   way the website behaves or looks, like your preferred language or the region
   that you are in.
    * Drift
      4
      Learn more about this provider
      driftt_aidNecessary for the functionality of the website's chat-box
      function.
      Expiry: 2 yearsType: HTTP
      DRIFT_SESSION_IDAllows the website to recoqnise the visitor, in order to
      optimize the chat-box functionality.
      Expiry: SessionType: HTML
      DRIFT_SESSION_STARTEDStores a unique ID string for each chat-box session.
      This allows the website-support to see previous issues and reconnect with
      the previous supporter.
      Expiry: SessionType: HTML
      DRIFT_visitCountsDetermines the number of visits of the specific visitor.
      This is used in order to make the chat-box function more relevant.
      Expiry: PersistentType: HTML
    * LinkedIn
      1
      Learn more about this provider
      lidcPending
      Expiry: 1 dayType: HTTP

 * Statistics 9
   
   Statistic cookies help website owners to understand how visitors interact
   with websites by collecting and reporting information anonymously.
    * Appnexus
      1
      Learn more about this provider
      bounceDetermines if a user leaves the website straight away. This
      information is used for internal statistics and analytics by the website
      operator.
      Expiry: SessionType: Pixel
    * Google
      1
      Learn more about this provider
      tdRegisters statistical data on users' behaviour on the website. Used for
      internal analytics by the website operator.
      Expiry: SessionType: Pixel
    * Hubspot
      4
      Learn more about this provider
      __hsscIdentifies if the cookie data needs to be updated in the visitor's
      browser.
      Expiry: 1 dayType: HTTP
      __hssrcUsed to recognise the visitor's browser upon reentry on the
      website.
      Expiry: SessionType: HTTP
      __hstcSets a unique ID for the session. This allows the website to obtain
      data on visitor behaviour for statistical purposes.
      Expiry: 180 daysType: HTTP
      hubspotutkSets a unique ID for the session. This allows the website to
      obtain data on visitor behaviour for statistical purposes.
      Expiry: 180 daysType: HTTP
    * LinkedIn
      1
      Learn more about this provider
      AnalyticsSyncHistoryPending
      Expiry: 30 daysType: HTTP
    * Neustar
      1
      Learn more about this provider
      abThis cookie is used by the website’s operator in context with
      multi-variate testing. This is a tool used to combine or change content on
      the website. This allows the website to find the best variation/edition of
      the site.
      Expiry: 1 yearType: HTTP
    * Soundcloud
      1
      Learn more about this provider
      number(#)Used to track user’s interaction with embedded content.
      Expiry: SessionType: HTML

 * Marketing 54
   
   Marketing cookies are used to track visitors across websites. The intention
   is to display ads that are relevant and engaging for the individual user and
   thereby more valuable for publishers and third party advertisers.
    * Meta Platforms, Inc.
      3
      Learn more about this provider
      _fbpUsed by Facebook to deliver a series of advertisement products such as
      real time bidding from third party advertisers.
      Expiry: 3 monthsType: HTTP
      lastExternalReferrerDetects how the user reached the website by
      registering their last URL-address.
      Expiry: PersistentType: HTML
      lastExternalReferrerTimeDetects how the user reached the website by
      registering their last URL-address.
      Expiry: PersistentType: HTML
    * 1rx.io
      unrulymedia.com
      
      2
      _rxuuid [x2]Sets a unique ID for the visitor, that allows third party
      advertisers to target the visitor with relevant advertisement. This
      pairing service is provided by third party advertisement hubs, which
      facilitates real-time bidding for advertisers.
      Expiry: 1 yearType: HTTP
    * 6sc.co
      1
      6suuidRegisters user behaviour and navigation on the website, and any
      interaction with active campaigns. This is used for optimizing
      advertisement and for efficient retargeting.
      Expiry: 400 daysType: HTTP
    * Appnexus
      4
      Learn more about this provider
      anjRegisters a unique ID that identifies a returning user's device. The ID
      is used for targeted ads.
      Expiry: 3 monthsType: HTTP
      receive-cookie-deprecationPending
      Expiry: 400 daysType: HTTP
      uuid2Registers a unique ID that identifies a returning user's device. The
      ID is used for targeted ads.
      Expiry: 3 monthsType: HTTP
      XANDR_PANIDThis cookie registers data on the visitor. The information is
      used to optimize advertisement relevance.
      Expiry: 3 monthsType: HTTP
    * Beachfront
      2
      Learn more about this provider
      __#_cidPending
      Expiry: 1 yearType: HTTP
      __io_cidUsed in conjunction with video-advertisement - Detects where on
      the website the video-advertisements should be displayed.
      Expiry: 1 yearType: HTTP
    * Bluekai.com
      3
      Learn more about this provider
      bkpaPresents the user with relevant content and advertisement. The service
      is provided by third-party advertisement hubs, which facilitate real-time
      bidding for advertisers.
      Expiry: 6 monthsType: HTTP
      bkuRegisters anonymised user data, such as IP address, geographical
      location, visited websites, and what ads the user has clicked, with the
      purpose of optimising ad display based on the user's movement on websites
      that use the same ad network.
      Expiry: 6 monthsType: HTTP
      site/#Pending
      Expiry: SessionType: Pixel
    * Datonics
      3
      Learn more about this provider
      anHistoryUsed to track visitors on multiple websites, in order to present
      relevant advertisement based on the visitor's preferences.
      Expiry: 30 daysType: HTTP
      anProfileUsed to track visitors on multiple websites, in order to present
      relevant advertisement based on the visitor's preferences.
      Expiry: 180 daysType: HTTP
      engineCollects data on user behaviour and interaction in order to optimize
      the website and make advertisement on the website more relevant.
      Expiry: SessionType: Pixel
    * Drift
      2
      Learn more about this provider
      drift_aidSets a unique ID for the specific user. This allows the website
      to target the user with relevant offers through its chat functionality.
      Expiry: 2 yearsType: HTTP
      drift_campaign_refreshSets a unique ID for the specific user. This allows
      the website to target the user with relevant offers through its chat
      functionality.
      Expiry: 1 dayType: HTTP
    * Google
      8
      Learn more about this provider
      _gaUsed to send data to Google Analytics about the visitor's device and
      behavior. Tracks the visitor across devices and marketing channels.
      Expiry: 2 yearsType: HTTP
      _ga_#Used to send data to Google Analytics about the visitor's device and
      behavior. Tracks the visitor across devices and marketing channels.
      Expiry: 2 yearsType: HTTP
      _gcl_auUsed by Google AdSense for experimenting with advertisement
      efficiency across websites using their services.
      Expiry: 3 monthsType: HTTP
      IDEPending
      Expiry: 1 yearType: HTTP
      pagead/landingCollects data on visitor behaviour from multiple websites,
      in order to present more relevant advertisement - This also allows the
      website to limit the number of times that they are shown the same
      advertisement.
      Expiry: SessionType: Pixel
      ads/ga-audiencesUsed by Google AdWords to re-engage visitors that are
      likely to convert to customers based on the visitor's online behaviour
      across websites.
      Expiry: SessionType: Pixel
      pagead/1p-conversion/#/Pending
      Expiry: SessionType: Pixel
      pagead/1p-user-list/#Pending
      Expiry: SessionType: Pixel
    * Hubspot
      3
      Learn more about this provider
      __ptq.gifSends data to the marketing platform Hubspot about the visitor's
      device and behaviour. Tracks the visitor across devices and marketing
      channels.
      Expiry: SessionType: Pixel
      __hmplCollects information on user preferences and/or interaction with
      web-campaign content - This is used on CRM-campaign-platform used by
      website owners for promoting events or products.
      Expiry: PersistentType: HTML
      HUBLYTICS_EVENTS_53Collects data on visitor behaviour from multiple
      websites, in order to present more relevant advertisement - This also
      allows the website to limit the number of times that they are shown the
      same advertisement.
      Expiry: PersistentType: HTML
    * LinkedIn
      2
      Learn more about this provider
      li_sugrPending
      Expiry: 3 monthsType: HTTP
      UserMatchHistoryPending
      Expiry: 30 daysType: HTTP
    * Neustar
      1
      Learn more about this provider
      uCollects data on user visits to the website, such as what pages have been
      accessed. The registered data is used to categorise the user's interest
      and demographic profiles in terms of resales for targeted marketing.
      Expiry: 1 yearType: HTTP
    * Openx
      1
      Learn more about this provider
      w/1.0/sdRegisters data on visitors such as IP addresses, geographical
      location and advertisement interaction. This information is used optimize
      the advertisement on websites that make use of OpenX.net services.
      Expiry: SessionType: Pixel
    * Reddit
      2
      Learn more about this provider
      _rdt_uuidUsed to track visitors on multiple websites, in order to present
      relevant advertisement based on the visitor's preferences.
      Expiry: 3 monthsType: HTTP
      rp.gifNecessary for the implementation of the Reddit.com's share-button
      function.
      Expiry: SessionType: Pixel
    * Simpli.fi
      4
      Learn more about this provider
      suidCollects information on user preferences and/or interaction with
      web-campaign content - This is used on CRM-campaign-platform used by
      website owners for promoting events or products.
      Expiry: 1 yearType: HTTP
      suid_legacyCollects information on user preferences and/or interaction
      with web-campaign content - This is used on CRM-campaign-platform used by
      website owners for promoting events or products.
      Expiry: 1 yearType: HTTP
      uid_syncdRegisters user behaviour and navigation on the website, and any
      interaction with active campaigns. This is used for optimizing
      advertisement and for efficient retargeting.
      Expiry: 7 daysType: HTTP
      uid_syncd_secureCollects information on user preferences and/or
      interaction with web-campaign content - This is used on
      CRM-campaign-platform used by website owners for promoting events or
      products.
      Expiry: 7 daysType: HTTP
    * Soundcloud
      1
      Learn more about this provider
      WIDGET::local::assignmentsUsed by audio-platform SoundCloud to implement,
      measure and improve their embedded content/service on the website - The
      collection of data also includes visitors’ interaction with embedded
      content/service. This can be used for statistics or marketing purposes.
      Expiry: PersistentType: HTML
    * Tapad
      4
      Learn more about this provider
      idsync/ex/receive/checkThis cookie is set by the audience manager of the
      website to determine the time and frequencies of visitor data
      synchronization - cookie data synchronization is used to synchronize and
      gather visitor data from several websites.
      Expiry: SessionType: Pixel
      TapAd_3WAY_SYNCSUsed for data-synchronization with advertisement networks.
      Expiry: 2 monthsType: HTTP
      TapAd_DIDUsed to determine what type of devices (smartphones, tablets,
      computers, TVs etc.) is used by a user.
      Expiry: 2 monthsType: HTTP
      TapAd_TSUsed to determine what type of devices (smartphones, tablets,
      computers, TVs etc.) is used by a user.
      Expiry: 2 monthsType: HTTP
    * Triplelift
      1
      Learn more about this provider
      xuidPresents the user with relevant content and advertisement. The service
      is provided by third-party advertisement hubs, which facilitate real-time
      bidding for advertisers.
      Expiry: SessionType: Pixel
    * Twitter Inc.
      2
      Learn more about this provider
      i/jot/embedsSets a unique ID for the visitor, that allows third party
      advertisers to target the visitor with relevant advertisement. This
      pairing service is provided by third party advertisement hubs, which
      facilitates real-time bidding for advertisers.
      Expiry: SessionType: Pixel
      RichHistoryCollects data on visitors' preferences and behaviour on the
      website - This information is used make content and advertisement more
      relevant to the specific visitor.
      Expiry: SessionType: HTML
    * Yahoo
      1
      Learn more about this provider
      A3Collects information on user behaviour on multiple websites. This
      information is used in order to optimize the relevance of advertisement on
      the website.
      Expiry: 1 yearType: HTTP
    * b.6sc.co
      1
      v1/beacon/img.gifUsed in context with Account-Based-Marketing (ABM). The
      cookie registers data such as IP-addresses, time spent on the website and
      page requests for the visit. This is used for retargeting of multiple
      users rooting from the same IP-addresses. ABM usually facilitates B2B
      marketing purposes.
      Expiry: SessionType: Pixel
    * j.6sc.co
      3
      _gd_sessionCollects visitor data related to the user's visits to the
      website, such as the number of visits, average time spent on the website
      and what pages have been loaded, with the purpose of displaying targeted
      ads.
      Expiry: 1 dayType: HTTP
      _gd_svisitorCollects visitor data related to the user's visits to the
      website, such as the number of visits, average time spent on the website
      and what pages have been loaded, with the purpose of displaying targeted
      ads.
      Expiry: 2 yearsType: HTTP
      _gd_visitorCollects visitor data related to the user's visits to the
      website, such as the number of visits, average time spent on the website
      and what pages have been loaded, with the purpose of displaying targeted
      ads.
      Expiry: 2 yearsType: HTTP

 * Unclassified 34
   Unclassified cookies are cookies that we are in the process of classifying,
   together with the providers of individual cookies.
    * MarketLinc
      5
      Learn more about this provider
      vs_conv_aiPending
      Expiry: SessionType: HTTP
      vs_lift_aiPending
      Expiry: SessionType: HTTP
      vs_sidPending
      Expiry: SessionType: HTTP
      vs_vfsPending
      Expiry: SessionType: HTTP
      vs_vidPending
      Expiry: 10 yearsType: HTTP
    * TechTarget
      1
      Learn more about this provider
      a/gif.gifPending
      Expiry: SessionType: Pixel
    * adaptiva.com
      28
      allcostPending
      Expiry: PersistentType: HTML
      avdownPending
      Expiry: PersistentType: HTML
      boundaryPending
      Expiry: PersistentType: HTML
      costsubtractPending
      Expiry: PersistentType: HTML
      egressPending
      Expiry: PersistentType: HTML
      lc25Pending
      Expiry: PersistentType: HTML
      lc35Pending
      Expiry: PersistentType: HTML
      oc22Pending
      Expiry: PersistentType: HTML
      oc26Pending
      Expiry: PersistentType: HTML
      pc10Pending
      Expiry: PersistentType: HTML
      pc17Pending
      Expiry: PersistentType: HTML
      pc20Pending
      Expiry: PersistentType: HTML
      phydpcostPending
      Expiry: PersistentType: HTML
      phydpsavePending
      Expiry: PersistentType: HTML
      phystocostPending
      Expiry: PersistentType: HTML
      phystosavePending
      Expiry: PersistentType: HTML
      serveradminPending
      Expiry: PersistentType: HTML
      serversavePending
      Expiry: PersistentType: HTML
      totalrevPending
      Expiry: PersistentType: HTML
      vc11Pending
      Expiry: PersistentType: HTML
      vc17Pending
      Expiry: PersistentType: HTML
      vc20Pending
      Expiry: PersistentType: HTML
      virdpcostPending
      Expiry: PersistentType: HTML
      virdpsavePending
      Expiry: PersistentType: HTML
      virstocostPending
      Expiry: PersistentType: HTML
      virstosavePending
      Expiry: PersistentType: HTML
      yesinPending
      Expiry: PersistentType: HTML
      zeroPending
      Expiry: PersistentType: HTML

Cross-domain consent[#BULK_CONSENT_DOMAINS_COUNT#] [#BULK_CONSENT_TITLE#]
List of domains your consent applies to: [#BULK_CONSENT_DOMAINS#]
Cookie declaration last updated on 24.01.24 by Cookiebot


[#IABV2_TITLE#]

[#IABV2_BODY_INTRO#]
[#IABV2_BODY_LEGITIMATE_INTEREST_INTRO#]
[#IABV2_BODY_PREFERENCE_INTRO#]
[#IABV2_LABEL_PURPOSES#]
[#IABV2_BODY_PURPOSES_INTRO#]
[#IABV2_BODY_PURPOSES#]
[#IABV2_LABEL_FEATURES#]
[#IABV2_BODY_FEATURES_INTRO#]
[#IABV2_BODY_FEATURES#]
[#IABV2_LABEL_PARTNERS#]
[#IABV2_BODY_PARTNERS_INTRO#]
[#IABV2_BODY_PARTNERS#]

Cookies are small text files that can be used by websites to make a user's
experience more efficient.

The law states that we can store cookies on your device if they are strictly
necessary for the operation of this site. For all other types of cookies we need
your permission.

This site uses different types of cookies. Some cookies are placed by third
party services that appear on our pages.

You can at any time change or withdraw your consent from the Cookie Declaration
on our website.

Learn more about who we are, how you can contact us and how we process personal
data in our Privacy Policy.

Please state your consent ID and date when you contact us regarding your
consent.

Do not sell or share my personal information
Deny Allow selection Customize

Allow all
Powered by Cookiebot by Usercentrics

Skip to Content
Search for:
Customer HubPartner HubContact Us
 * Our Platform
 * Products
   *  * OneSite Patch
      * OneSite Anywhere
      * OneSite Health
      * OneSite Wake
 * Resources
   *  * Blog
      * Case Studies
      * Datasheets
      * eBooks
      * Infographics
      * Interactives
      * Podcasts
      * Reports
      * Webinars
      * White Papers
 * About
   *  * Awards
      * Careers
      * Events
      * In the News

 * Our Platform
 * Products
   *  * OneSite Patch
      * OneSite Anywhere
      * OneSite Health
      * OneSite Wake
 * Resources
   *  * Blog
      * Case Studies
      * Datasheets
      * eBooks
      * Infographics
      * Interactives
      * Podcasts
      * Reports
      * Webinars
      * White Papers
 * About
   *  * Awards
      * Careers
      * Events
      * In the News

Search for:
Customer HubPartner HubContact Us
 * CONNECT WITH US

 * CONNECT WITH US


 1. Home
 2. BLOG
 3. How Ring Deployments Can Supercharge Your Patch Strategy

Patching


HOW RING DEPLOYMENTS CAN SUPERCHARGE YOUR PATCH STRATEGY

Deploying application updates has become more difficult as they arrive more
quickly. Here’s how ring deployments can help.

June 20, 2023 6 minute read

David Sowder, Senior Solutions Architect at Adaptiva


SHARE

 * 
 * 
 * 
 * 

Dante's Inferno described his journey through the nine rings of hell, which
included gluttony, violence, and treachery. IT managers might include another:
application updates. Patching a complex application portfolio on thousands of
endpoints is a challenge that could vaporize your weekend. As it turns out,
though, another type of ring can save you from this curse. Welcome to the world
of ring deployments.

HOW SOFTWARE DEVELOPMENT EVOLVED

Application patching was once a relatively simple process. Software teams
handled tasks sequentially in large chunks, creating infrequent, predictable
updates. From the early 2000s, we saw four changes that transformed software
development.

First, agile development techniques broke those larger tasks down into smaller,
more manageable ones that developers could complete more quickly in a series of
software 'sprints'. These enabled developers to deliver software more quickly.

Second, the architecture of the software changed. Programs moved away from
millions of lines of monolithic code, where a single change could have
unpredictable effects across the whole code base. Developers broke them into
small software services that could interact in well-defined ways. Multiple teams
could then update parts of the overall program simultaneously without worrying
about breaking things. Suddenly, software development could happen concurrently,
rather than sequentially.

Developers' tooling also became more sophisticated. CI/CD pipelines emerged that
automated large parts of the software development and testing process. All
developers committed their changes to a single pipeline that applied automated,
gated tests before automatically sending updates to deployment.

Finally, these three advances empowered users. They could now offer more regular
feedback to developers, who were more accountable. Agile development and
advanced tooling created a continuous improvement loop in which user issues make
it back to developers quickly for rapid handling and redeployment.

VICTIMS OF OUR OWN SUCCESS

These advances led to smaller software updates - including security patches -
that are released more often. Today's software is released in micro-cycles
measured not in months, but in weeks, days, or even hours.

That's great news for security teams and end users alike, who get the most
secure, up-to-date software. It's terrible news for the engineers and operations
staff who have to deploy those updates across large fleets of endpoints. In the
past, they'd go through rigorous testing with each update to ensure that they
worked as expected in the field. More frequent updates make those tests more
difficult. The rising number of applications per endpoint has compounded this
problem. In short, engineers face a crisis in updating velocity and volume.

RINGING IN THE CHANGES

Companies responded to this problem by introducing ring deployments. This
concept collapses the testing and the deployment phases by rolling out code
updates gradually to an ever-increasing number of users on live systems. It gets
its name from the concentric rings of users that it uses as test subjects.

Some might worry about employing users as test subjects, but ring deployments
include measures to minimize any damage from problematic software rollouts. One
of the most important is to limit the 'blast radius' of any problems by easing
into the deployment one group of users at a time.

Ring deployments enable engineers to constantly monitor the success of their
software roll-out. With each ring, they deploy, gather feedback, and then decide
what to do next.

DEPLOYMENT

A common approach to these deployments involves three pre-production rings,
followed by a production deployment. In the software developers' spirit of
zero-based numbering, we tend to call the first ring P0 (P standing for phase),
or the zero ring. That's especially appropriate given that this is ground zero
for the software update because users in the zero ring get it before anyone
else.

In some circles, zero-ring users are known as canaries. They don't simply get
the software and get on with their jobs. They have a responsibility to work
collaboratively with IT, sounding the alarm if they run into any problems with
the updated software. These canaries should contain only very technical
employees. Consider IT groups and engineers for this small subset and be sure
they know how to provide feedback early and often when they see any potential
problems.

While we're looking for unexpected hiccups in the zero ring, it's important to
communicate the expected too. With this in mind, be sure to thoroughly read the
release notes for the update and pass these on to canary users. This gives them
context, while also enabling you to ask better questions.

The second ring is known as the P1 ring, which contains a wider base of early
adopters that sit somewhere between canaries and average end-users. These users
can be outside engineering and IT, but they should still be a technical audience
that is friendly to the IT department.

Early adopters are often willing to try an update because they want the latest
version of the software and are often less bothered by potential glitches. They
only see the software after you're satisfied that the first set of users is
happy with the update. There are more of these early adopters, reflecting your
growing confidence in the update.

Third is the P2 ring. This targets a wider audience, but it is still part of the
pre-production deployment. Engineers often consider this to be the user
acceptance test ring, where representatives from business user groups get to use
the software. By this stage, though, most if not all of the major problems
should have been worked out.

After these three rings, it's time to deploy the software into production. While
some companies do that all at once, others will continue with a ring-based
deployment that gradually expands the blast radius throughout the rest of the
organization.

Production rollouts have different kinds of groups based on geographies,
departments, or the overall number of endpoints. Other variables affecting this
phased deployment are technical. For example, companies might be limited by the
network bandwidth available, and staging deployments to avoid traffic
bottlenecks.

GATHERING FEEDBACK

Collecting user feedback is something that should happen in each pre-production
ring, but methods often vary throughout the process. For earlier rings, it is
useful to hunt for issues by giving tech-savvy canaries and early adopters a
user feedback questionnaire. In later stages, it's often better to take a
passive approach by waiting for problem reports, especially with business users
who assume that you've already tested the software using traditional methods.

When taking a passive approach, it is important to work closely with your help
desk staff. Alert them of potential tickets around the software update and
ensure that there's a channel for you to see those easily.

DECIDING WHAT TO DO NEXT

After collecting feedback for a set period in each ring, you enter the decision
phase. Here, you deal with any problems that have occurred, and then either
proceed by deploying to the next ring, or in the worst scenario, abort the
deployment.

Your approach to resolving deployment problems will depend on several variables.
For example, the vendor might be aware of the problem and have issued a
follow-up patch to fix it. In some cases, a reboot is enough to fix the issue.
Or a simple configuration change to the application or another part of the
system could resolve the problem, giving you the green light for the next ring.

If none of these options are appropriate, you might have to admit defeat for the
time being and restore the system state until another solution emerges. Some
patches have hotfixes that support rollbacks, making it easier to revert user
endpoints. Other updates are entirely new product versions that require a
reinstall, although engineers can often automate that task.

MANAGING MULTIPLE UPDATES

Even with the ring method, companies will still face complex deployments
involving multiple patches. Unless your solution is capable of deploying
multiple patches at once to prevent repeated endpoint restarts and downtime like
Adaptiva’s OneSite Patch can, avoid deploying multiple patches to the zero ring
at once, as these can make root cause analysis more difficult. The caveat is
that different parts of the organization might use different tools, enabling you
to handle simultaneous rollouts to different sets of canaries and early adopters
without creating conflicts.

In all cases, a deployment calendar can help you to prioritize and schedule
updates based on their importance to the organization. Naturally, security
updates will often bubble to the top of the list. In extreme cases, where you're
racing to deploy a critical zero-day patch before attackers take advantage, you
can expedite the process by compressing the time between deployment rings.

Ring deployment has become the smart response for more organizations that longer
find controlled testing logistically plausible. Done well, it can minimize the
up-front work involved in software updates and accelerate the deployment
process. However, it means handling user feedback responsibly, which in turn
means building robust relationships between engineering, operations, and support
teams.

This is the latest entry in our Adaptiva Practitioner Blog Series. In these blog
posts, we share what we know about managing endpoints. Stop by to hear from our
own in-house subject matter experts. We are excited to discuss best practices,
technical how-tos, and other topics we think you'll find valuable. Our solution
architects, product experts, and own IT practitioners have seen and done it all.
We are adding new content regularly and are happy to have you here.

TAGS

Practitioner Series | OneSite Patch | Product


RELATED ARTICLES

Patching


HOW TO: SET UP PHASED DEPLOYMENTS

Ross Leingang, Sales Engineer at Adaptiva
OneSite Patch


RIDING THE WAVES OF CHANGE PART II: HOW DEPLOYMENT WAVES MAXIMIZE PATCHING
EFFICIENCY

Dan Richings, SVP, Global Customer Success, Pre-Sales, and Solutions at Adaptiva
Tech Talk


SCCM AND WINDOWS 10 SECURITY: HOW TO GET IT RIGHT

Adaptiva

The only smart solution in a world strangled by inefficient servers. Adaptiva
gives you unrivaled endpoint management powered by the surplus capacity of the
devices already on your network.


 * PRODUCTS
   
   * OneSite Patch
   * OneSite Anywhere
   * OneSite Health
   * OneSite Wake


 * TECHNOLOGY
   
   * The Adaptiva OneSite Platform


 * WHY ADAPTIVA?
   
   * Awards
   * Case Studies


 * RESOURCES
   
   * Reports
   * Datasheets
   * Podcasts
   * Webinars
   * Infographics
   * White Papers
   * Blog


 * COMPANY
   
   * About
   * Executive Team
   * Careers
   * Events
   * Partners
   * Customer Support
   * In the News
   * Contact Us
 * 

Copyright ©2024 Adaptiva. All rights reserved. All copyrights and trademarks
remain property of their respective owners and are used for identification only.
View our full copyright notice. Contact Us | Privacy Policy | Compliance | Terms
of Use