Jump to content
View in the app

A better way to browse. Learn more.

Horizon Community

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Horizon Muli-Threading (Leveraging Hyperthreading Technology)

Featured Replies

Multithreading is a key feature of Horizon and one of the main purposes of its creation was to leverage the ultimate power of multithreading and your computer's CPU hardware. We want to use as many cores as possible and be able to control the number of them running to balance the load of the server. With multiple cores come multiple responsibilities such as managing players, managing sockets, managing data and resources, managing multiple various technical controls which change into resourcefulness and add to the technical competence of the software in question. To read up on Multithreading and the benefits of it, linked below is a beginners guide to learning what is multithreading.

 

 

Horizon's multithreading is based around the limitless requirements of the user and his user population. With Horizon's multithreaded core you can configure the software to run for as many users as you want without a capability restriction. So if you are targeting 10,000 or 20,000 users it is no longer a hesitation or restricted amount for your server, configure away the 4 options provided to scale your server for multiple users on each core. For example if horizon is meant to run 1000 players per thread, you can configure 10 threads per environment -

1. The Networking Environment - Responsible for capturing packets, passing them on to the game logic cores and sending the ones on their way back out. Scaled horizontally, the load is balanced out dividing the number of sockets received per number of cores available for addressing them.

2. The Game Logic Environment - Responsible for the actual running and working of the game based on a number of maps per core, the work load is balanced out and scaled horizontally (per instance of Game Logic Environments created).

3. The Scripting VM - Where number of active users of scripts are split per instance of Script VMs running.

4. The Persistence VM - Where number of active users, guilds and parties are split per instance of Persistence VMs available.

These four pillars of Horizon's new design are paramount to the sustaining of tens of thousands of users online. View the design diagram of the multithreaded components in action below.

concurrent-architecture.drawio.thumb.png.cd81211530332acd909731f14c4facd4.png

  • Protos changed the title to Horizon Muli-Threading (Leveraging Hyperthreading Technology)
  • Protos pinned this topic

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

Recently Browsing 0

  • No registered users viewing this page.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.