43232

Less Conflicting Session Manager for Zope 2

Zope2 Sessioning documentation: "Conflict errors will be retried automatically by Zope, and the end user should never see one."

However, although I think I have the best setup for a high traffic deployment (temporary storage for session data on ZEO, shared by four clients, zope instances with identical setup), end user still gets Database ConflictErrors.

Searching the mail lists, it seems this is a common issue for Zope's implementation of session data based on OOBTree. Some suggest using repoze.session, but that's unsupported since 2009.

Any other approach for fixing BTree / TransientObject conflict errors? Do I have to change default settings for session_data (Data object timeout value, Timeout Resolution, Maximum no of subobjects)?

Answer1:

I think your best bet is to switch the session implementation to using Beaker instead, via Products.BeakerSessionDataManager. It is a drop-in replacement for the default Zope2 session manager, but performs much better under high load and certainly won't suffer from ConflictErrors.

Recommend

  • Navigation portlet: all childen always expanded
  • My Archetypes-based content type can't be added
  • Obtaining the “default” mockup TinyMCE configuration on Plone 5
  • C++ std::set comparator
  • a concept similar to pointers in as3?
  • What is Closure Compiler?
  • How to get the index of element in the List in c#
  • How to use SBT with multiple sub project web applications?
  • Flex/AS3 very strange simple Number operation issue
  • How to set `secure` and `httpOnly` for Plones `__ac` cookie?
  • Create a multiple screen android application
  • LNK1104: cannot open file 'kernel32.lib'
  • Facebook Messenger Platform - Detect user typing
  • Cassandra NoClassDefFoundError: com/google/common/util/concurrent/AsyncFunction
  • Invert string in Rust
  • Scala: Function returning an unknown type
  • Unable to click on the next page button containing “>” sign
  • SPARQL date range
  • Doctrine2 bulk import try to work with another entity
  • How to pass a value from ASP.NET MVC controller to ASP.NET webforms control inside MVC View?
  • Ubuntu and bcrypt
  • calculate gradient output for Theta update rule
  • Does Mobilefirst provide a provision to access web services directly?
  • What is the purpose of TaskExecutor in spring?
  • zope_i18n_compile_mo_files doesn't work on a Zeo configuration
  • Moving mysql files across servers
  • Chrome doesn't support silverlight anymore? How to solve this?
  • Installing Hadoop, Java Exception about illegal characters at index 7?
  • FB SDK and cURL: Unknown SSL protocol error in connection to graph.facebook.com:443
  • Different response to non-authenticated users and AJAX calls
  • How to extract text from Word files using C#?
  • How to check if every primary key value is being referenced as foreign key in another table
  • Sending data from AppleScript to FileMaker records
  • Arrow is showed instead of the material design version hamburger icon. Why doesn't syncState in
  • Data Validation Drop Down Box Arrow Disappearing
  • Angular 2 constructor injection vs direct access
  • embed rChart in Markdown
  • How to get NHibernate ISession to cache entity not retrieved by primary key
  • How can I use `wmic` in a Windows PE script?
  • Unable to use reactive element in my shiny app