Portal Concurrency
Summarize
Summary of Portal Concurrency
Portal Concurrency in the Yokohama release enhances portal performance by optimizing content delivery for high concurrency scenarios, specifically forCompany Events. This feature allows a larger number of users to access event content simultaneously without sacrificing functionality, resulting in improved availability and user experience. It is activated only when theOptimize performance for high traffic volumeoption is selected for Company Events.
Show less
Key Features
- Precomputed Audience Table (sncdprecomputedaudience): Maintains records linking users with the content they are authorized to access. This table is synchronized automatically and should not be manually edited.
- Automatic Synchronization: A scheduled job named Content Publishing: Precompute Audiences for Company Events runs daily at 00:30. It precomputes audiences for Company Events occurring within a 30-hour window, populating the precomputed audience table. Another scheduled job cleans up expired event records.
- Manual Synchronization Options:
- Full manual sync: System administrators can manually run the scheduled job to fully sync the precomputed audience table.
- Partial manual sync: Content administrators can trigger audience precomputation for specific events to ensure up-to-date access control, mainly used for last-minute adjustments.
- Performance Optimization Flow: When a user accesses a high concurrency Company Event, the system first checks the precomputed audience table for access authorization. If authorized, content loads immediately; otherwise, it falls back to the standard audience check.
- Standard Audience Check Flow: This is the existing method used when precompute optimization is not enabled. It involves querying schedules and audiences dynamically to determine user access.
Benefits for ServiceNow Customers
- Improved Scalability: Enables handling of high traffic volumes efficiently, ensuring many users can access event content simultaneously without delays.
- Enhanced User Experience: Reduces load times by precomputing access rights, allowing faster content rendering for authorized users.
- Flexibility and Control: Provides both automated and manual synchronization options to maintain accurate access controls tailored to dynamic event audiences.
- Maintain Security and Accuracy: Ensures users only see content they are authorized to access through up-to-date audience precomputation and fallback checks.
Discover ways to improve performance and enhance portal concurrency content.
Portal performance features seamlessly improve high concurrency content without sacrificing user functionality, and creates greater availability and flexibility to a larger number of users accessing content simultaneously.
For more information on managing portal performance, see Managing portal performance.
| sn_cd_precomputed_audience-list | ||
|---|---|---|
| Column name | Column type | Description |
| User | Reference (sys_user) | The user associated to this precompute record |
| Content | Reference (sn_cd_content_base) | The content the user has access to |
| Domain | Sys Domain | Domain separation field |
Precompute Flow for Automatic Sync Trigger
- New Scheduled Job exists titled Content Publishing: Precompute Audiences for Company Events that is scheduled to run every 24 hours at 00:30.
- When job triggers, check all high traffic company events from the current hour to the next 30 hours.
- For each event that is found, precompute the audience to record the user and the content in the precompute table.
- Check the Scheduled Job titled Content Publishing: Precompute Audiences for Company Events for the precompute flow cleanup.
- When job triggers, calculate unique events among existing precompute audience records.
- For each company event calculated, check if it has ended. If ended, delete all precompute records associated to it.
| Precompute Flow Examples | |
|---|---|
| Full manual sync | A system admin can manually run the Scheduled Job Content Publishing: Precompute Audiences for Company Events to fully sync the precomputed audience table. |
| Partial manual sync |
A Content Admin can browse to the sn_cd_company_event table, find a specific event, and select the Precompute Audiences for this Content UI Action. Note:
This only removes users who don’t belong in a content audience anymore and is used in last minute cases to ensure only users who should have access can view content. |
Precomputed Audience Check Flow
- User accesses a Company Event with high traffic performance optimization enabled.
- Performance optimization check is initiated.
- Queries precompute audience table with content ID and current user ID.
- If a user is found, start loading the article.
- If no user is found, initiate standard access check.
Standard Audience Check Flow
- User accesses a Company Event.
- Access check is initiated.
- Queries schedule content table for each schedule associated to the content being viewed.
- For each schedule content record, iterate each associated audience.
- For each audience, run.isUserInAudience(). This evaluates if the current user is in the audience.
- If a user is found, start loading the article.
- If no user is found, iterate each audience associated for each schedule content record.
- If a user is never found, show the empty state article detail page.