<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://ivs.help/wiki/index.php?action=history&amp;feed=atom&amp;title=Server_Side_Software_Architecture</id>
		<title>Server Side Software Architecture - Revision history</title>
		<link rel="self" type="application/atom+xml" href="https://ivs.help/wiki/index.php?action=history&amp;feed=atom&amp;title=Server_Side_Software_Architecture"/>
		<link rel="alternate" type="text/html" href="https://ivs.help/wiki/index.php?title=Server_Side_Software_Architecture&amp;action=history"/>
		<updated>2026-06-07T06:23:58Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>https://ivs.help/wiki/index.php?title=Server_Side_Software_Architecture&amp;diff=17580&amp;oldid=prev</id>
		<title>IVSWikiBlue: Created page with &quot;{{Article - Manual | content =  &lt;onlyinclude&gt; &lt;h1&gt;Server Side Software Architecture&lt;/h1&gt; Our server-side software is built on a standard &lt;b&gt;LEMP stack&lt;/b&gt; consisting of: *&lt;str...&quot;</title>
		<link rel="alternate" type="text/html" href="https://ivs.help/wiki/index.php?title=Server_Side_Software_Architecture&amp;diff=17580&amp;oldid=prev"/>
				<updated>2026-06-03T14:25:05Z</updated>
		
		<summary type="html">&lt;p&gt;Created page with &amp;quot;{{Article - Manual | content =  &amp;lt;onlyinclude&amp;gt; &amp;lt;h1&amp;gt;Server Side Software Architecture&amp;lt;/h1&amp;gt; Our server-side software is built on a standard &amp;lt;b&amp;gt;LEMP stack&amp;lt;/b&amp;gt; consisting of: *&amp;lt;str...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Article - Manual | content = &lt;br /&gt;
&amp;lt;onlyinclude&amp;gt;&lt;br /&gt;
&amp;lt;h1&amp;gt;Server Side Software Architecture&amp;lt;/h1&amp;gt;&lt;br /&gt;
Our server-side software is built on a standard &amp;lt;b&amp;gt;LEMP stack&amp;lt;/b&amp;gt; consisting of:&lt;br /&gt;
*&amp;lt;strong&amp;gt;Linux&amp;lt;/strong&amp;gt;&lt;br /&gt;
{{Float | content = {{Aside | style = max-width: 400px | content = The application is designed to run on the latest Ubuntu Linux LTS &amp;lt;em&amp;gt;(Server Edition)&amp;lt;/em&amp;gt;.}} }}&lt;br /&gt;
*&amp;lt;strong&amp;gt;Nginx&amp;lt;/strong&amp;gt;&lt;br /&gt;
*&amp;lt;strong&amp;gt;MariaDB&amp;lt;/strong&amp;gt;&lt;br /&gt;
*&amp;lt;strong&amp;gt;PHP&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Top of Page}}&lt;br /&gt;
{{hr}}&lt;br /&gt;
&lt;br /&gt;
{{Manual lvl 2 | title = Core Application Components | content = &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Web Host&amp;lt;/b&amp;gt;&lt;br /&gt;
*Serves the PHP-based application and user interface&lt;br /&gt;
*Powered by the Nginx web server&lt;br /&gt;
&lt;br /&gt;
{{hr - 2}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Database&amp;lt;/b&amp;gt;&lt;br /&gt;
*Stores all unique, customer-specific configuration and application data&lt;br /&gt;
*Implemented using MariaDB&lt;br /&gt;
&lt;br /&gt;
{{hr - 2}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Streaming Engine&amp;lt;/b&amp;gt;&lt;br /&gt;
*Manages communication with cameras&lt;br /&gt;
*Handles video streaming to client PCs&lt;br /&gt;
*Responsible for recording, storage, and clip creation&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Top of Page}}&lt;br /&gt;
{{hr}}&lt;br /&gt;
&lt;br /&gt;
{{Manual lvl 2 | title = Logical Server Architecture | content = &lt;br /&gt;
The application is divided into two main server roles:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Application Server:&amp;lt;/b&amp;gt;&lt;br /&gt;
The Application Server hosts the core application logic and includes:&lt;br /&gt;
*PHP web pages served via Nginx&lt;br /&gt;
*MariaDB services&lt;br /&gt;
*Node.js messaging and control service&lt;br /&gt;
&lt;br /&gt;
{{hr - 2}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Media Server:&amp;lt;/b&amp;gt;&lt;br /&gt;
The Media Server is responsible for all video-related operations, including:&lt;br /&gt;
*Camera communication&lt;br /&gt;
*Video stream distribution to clients&lt;br /&gt;
*Recording management and clip generation&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Top of Page}}&lt;br /&gt;
{{hr}}&lt;br /&gt;
&lt;br /&gt;
{{Manual lvl 2 | title = Deployment Models | content = }}&lt;br /&gt;
&lt;br /&gt;
{{Float | content = {{img - resize | file = Network Architecture-One Server.webp | width = 300px | style = margin:0px 10px}} }}&lt;br /&gt;
{{Manual lvl 3 | title = Single Server | content =&lt;br /&gt;
The entire server-side software stack can be deployed on a single [[Servers | physical]] or [[VM - Main Page | VM]]. This configuration is suitable for smaller installations and environments with lower camera counts.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{hr - 2}}&lt;br /&gt;
&lt;br /&gt;
{{Float | content = {{img - resize | file = Network Architecture-Multi Server.webp | width = 300px | style = margin:0px 10px}} }}&lt;br /&gt;
{{Manual lvl 3 | title = Multi-Server | content =&lt;br /&gt;
For larger deployments—&amp;lt;em&amp;gt;such as those &amp;lt;b&amp;gt;exceeding 50 cameras&amp;lt;/b&amp;gt; or spanning multiple departments&amp;lt;/em&amp;gt;—the system supports a distributed architecture using multiple Media Servers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-weight: bold; font-size: 1.1em&amp;quot;&amp;gt;In this model:&amp;lt;/div&amp;gt;&lt;br /&gt;
*One Application Server hosts the core application services&lt;br /&gt;
*One or more dedicated Media Servers handle video processing and storage&lt;br /&gt;
*Media Servers can be added incrementally to scale performance and capacity&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Aside - Helpful | content = This architecture provides flexibility, scalability, and efficient handling of high video workloads.}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Top of Page}}&amp;lt;/onlyinclude&amp;gt;}}&lt;/div&gt;</summary>
		<author><name>IVSWikiBlue</name></author>	</entry>

	</feed>