A deployment architecture depicts the mapping of a logical architecture to a physical environment. The physical environment includes the computing nodes in an intranet or Internet environment, CPUs, memory, storage devices, and other hardware and network devices.
Designing the deployment architecture involves sizing the deployment to determine the physical resources necessary to meet the system requirements specified during the technical requirements phase. You also optimize resources by analyzing the results of sizing the deployment to create a design that provides the best use of resources within business constraints.
SeMA application sizing-estimation process .
Deployment Logical Architecture .
HW Sizing Specs .
Deployment Process .
Beside introducing real-world customizable phishing simulations, Entrench offers anti-phishing behavior management feature which allows to measure awareness level of your employees.
Entrench training modules are offered in a variety of styles with full animation and narratives in many languages.
Security awareness sessions are no longer boring or dull. Sessions we offer based on (simplicity, Humor, ease of use and story-telling.
Entrench quizzes and exams can measure level of awareness that has been conveyed to the users.
Awareness campaigns can be customized and targeted to either specific group of users or an entire department
Zisoft is composed of several independent modules so you can pick and choose which modules you need to deploy. All modules are accessible from the same familiar user interface. The ZiSoft modules are
Learning Management System
Security Awareness Content
Email Phishing Simulator
Think of Zisoft LMS as your own private 'Coursera' or 'Udemy'. You use it to create courses complete with videos, slides, quizzes, exams, and certificates. Then you assign the courses to your employees and monitor their training in real-time. You can assign as many lessons you need to as many employees you need, and you can generate comprehensive reports in a variety of formats and charts.
On top of the LMS, Zisoft offers Zinad's security awareness content. These are predefined courses and exams that target security related topics. It offers 'Email Security', 'Data Leakage', 'Device Security', 'Browser Security', among many others.
You are under a constant stream of phishing attacks whether you believe it or not. If you want to make sure, try our phishing simulator. With this simulator, you can send a 'controlled' and 'harmless' phishing email to a group of your organization users, and you can monitor in real time how many of them fall victim for those attacks. With the simulator, you can generate a report that tells you the percentage of your organization who is prone to phishing attacks, rank the departments according to their vulnerability, and conduct competitions for the employees to encourage them to be better at spotting phishing attacks.
Odoo follows a multi-tier architecture, and we can identify three main tiers: Data, Logic, and Presentation:
The Data tier is the lowest-level layer, and is responsible for data storage and persistence. Odoo relies on a PostgreSQL server for this. PostgreSQL is the only supported RDBMS, and this is a design choice. So, other databases such as MySQL are not supported. Binary files, such as attachments of documents or images, are usually stored in a filesystem.
The Logic tier is responsible for all the interactions with the data layer, and is handled by the Odoo server. As a general rule, the low-level database should only be accessed by this layer, since it is the only way to ensure security access control and data consistency. At the core of the Odoo server, we have the Object-Relational Mapping (ORM) engine for this interface. The ORM provides the application programming interface (API) used by the addon modules to interact with the data.
The Presentation tier is responsible for presenting data and interacting with the user. It is implemented by a client responsible for all the user experience. The client interacts with the ORM API to read, write, verify, or perform any other action, calling ORM API methods through remote procedure calls (RPCs). These are sent to the Odoo server for processing, and then the results are sent back to the client for further handling.
Ingress Controller: NGINX is web serving, reverse proxying, caching, load balancing, media streaming, and more. It started out as a web server designed for maximum performance and stability. In addition to its HTTP server capabilities, NGINX can also function as a proxy server for email (IMAP, POP3, and SMTP) and a reverse proxy and load balancer for HTTP, TCP, and UDP servers Redis Server: Redis , is a fast, open source, in-memory, key-value data store , All Redis data resides in memory, which enables low latency and high throughput data access. Unlike traditional databases, In-memory data stores don’t require a trip to disk, reducing engine latency to microseconds. Because of this, in-memory data stores can support an order of magnitude more operations and faster response times. The result is blazing-fast performance with average read and write operations taking less than a millisecond and support for millions of operations per second. BI Tool [ MetaBase - SuperSet ]: Business intelligence (BI) tools are types of application software which collect and process large amounts of unstructured data from internal and external systems, including books, journals, documents, health records, images, files, email, video and other business sources
Sizing for performance and load requirements is an iterative process that estimates the number of CPUs and corresponding memory required to support the services in the deployed system. When estimating the number of CPUs required to support a service, consider the following:
Use cases and corresponding usage analysis that apply to the service
System requirements determined during analysis for technical requirements
Past experience with the Odoo System components providing the service
The process of sizing for performance typically consists of the following steps. The ordering of these steps is not critical—it simply provides a way to consider the factors that affect the final result.
Determine a baseline CPU estimate for components identified as user entry points to the system.
Make adjustments to the CPU estimates to account for dependencies between components.
Make adjustments to the CPU estimates to reflect security, availability, scalability, and latent capacity requirements.
Shown below is a diagram of sizing-estimation process. It is not the only method for sizing deployment, but it should provide useful insight and guidance
1. Estimate user concurrency and throughput
In most use-case scenarios, the number of expected concurrent users is far less than the number of named users of system. A scenario in which all of the named users are simultaneously accessing the system is extremely rare. Normally, a globally distributed organization with users spread out all over the world experience about â…“ of its named users online at any time during their individual 8-hour work days.
Concurrency typically ranges from 10% to 50+% for App deployments.
10 % [ Minimum ]
500000
50000
20 % [ Average ]
500000
100000
30 % [ Recommended ]
500000
150000
40 % [ Highly Scaled ]
500000
250000
2. Estimate SeMA Application HW sizing
A- Every CPU core handles 2 Worker B- Worker can handle 120 Portal users C- Concurrent user = Users use app simultaneously with time session 5 sec D - Best practice of workers per machine from 17 to 33 [Due to processor queuing]
3. Estimate SeMA DB HW sizing Database storage requirements may be estimated roughly using the following calculation:
4. Estimate SeMA File Storage HW sizing