Skip to content

Commit 88e6e36

Browse files
committed
added server configs
1 parent c2ca125 commit 88e6e36

File tree

80 files changed

+472
-29
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

80 files changed

+472
-29
lines changed

book/chapters/systemd/chapter.adoc

Lines changed: 54 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -185,7 +185,7 @@ obtenemos el 50% de 300 millones.
185185

186186
Sabemos que con 150 millones de usuarios diarios, cada usuario realiza 2 posts por día. Esto lo debemos transformar a segundos.
187187

188-
[text]
188+
[,text]
189189
----
190190
posts_por_dia = 150 millones usuarios * 2 posts
191191
horas_por_dia = 24
@@ -198,7 +198,7 @@ QPS = ~3500 Queries por Segundo.
198198
Ahora si tomamos la cantidad total de usuarios y asumiendo que todos
199199
los usuarios realizan dos posts en un mismo día
200200

201-
[text]
201+
[,text]
202202
----
203203
QPS_MAX = 2 * QPS = ~7000 Queries por Segundo.
204204
----
@@ -207,7 +207,7 @@ QPS_MAX = 2 * QPS = ~7000 Queries por Segundo.
207207

208208
Ahora si definimos que cada post contiene la siguiente información:
209209

210-
[sql]
210+
[,sql]
211211
----
212212
id varchar(64) -- cadena de caracteres de 64 bytes
213213
text varchar(140) -- cadena de caracteres de 140 bytes
@@ -216,7 +216,7 @@ media blob(1MB) -- imagen de 1 MegaByte
216216

217217
Utilizando la `QPS` podemos calcular cuánto espacio de almacenamiento necesitamos.
218218

219-
[text]
219+
[,text]
220220
----
221221
peso_imagen = 10% * 1 MB
222222
posts_por_dia * peso_imagen
@@ -230,6 +230,56 @@ terabytes_en_5_anios = terabytes_por_dia * 365 * 5 // 55 PetaBytes
230230

231231
- https://gist.github.com/jboner/2841832
232232

233+
=== Tipos de Configuración de Servidores
234+
235+
Los servidores pueden estar configurados de distinta forma
236+
dependiendo de las necesidades de la aplicación y las capacidades
237+
técnicas requeridas. En el ciclo de vida de la aplicación se puede
238+
dar situaciones en las que se deba aumentar los recursos disponibles
239+
y de que forma son distribuidos.
240+
241+
==== Servidor Único
242+
243+
Este es una configuración inicial. Todos los servicios de la aplicación (servidor web, base de datos, almacenamiento de archivos, etc). Están dentro de
244+
una sola máquina y comparten recursos de red, procesador, memoria y almacenamiento.
245+
246+
*Ventajas*
247+
248+
- Es fácil de configurar.
249+
- Es relativamente barato.
250+
- Ideal para aplicaciones pequeñas y de poco alcance.
251+
252+
*Desventajas*
253+
254+
- Propenso a errores por agotamiento de memoria o disco.
255+
- Solamente un servidor, si este es atacado o comprometido en seguridad, puede significar una brecha total o caida total del servicio.
256+
- Puede tener mayor latencia para usuarios lejos de la región donde está ubicado el servidor.
257+
258+
==== Servidor de Base de Datos Separado
259+
260+
El siguiente nivel en la configuración es separar el servidor de la base de datos, dandole una instancia propia del servidor de aplicaciones.
261+
262+
*Ventajas*
263+
264+
- La base de datos tiene sus recursos separados del servidor de aplicaciones.
265+
- Permite escalar individualmente cada servidor según necesidades.
266+
- La seguridad es mayor al no compartir la misma máquina.
267+
268+
*Desventajas*
269+
270+
- Aumenta los costos de mantenimiento al tener más máquinas funcionando.
271+
272+
==== Una Máquina por Servicio
273+
274+
Una vez que las necesidades de la aplicación lo requieran, se puede buscar la configuración a través de la separación de una máquina por servicio. Por ejemplo si la aplicación tiene: servidor web, base de datos, almacenamiento de archivos y procesamiento de datos. Se podría tener una máquina por cada elemento del sistema, una máquina para el servidor web, otra máquina para la base de datos, otra para el sistema de almacenamiento y otra para el procesamiento de datos.
275+
276+
*Ventajas*
277+
278+
- Cada componente es separado y puede escalar individualmente.
279+
280+
*Desventajas*
281+
282+
- Los costos aumentan considerablemente.
233283

234284
=== Escalado horizontal y vertical
235285

docs/book.xml

Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2304,6 +2304,81 @@ terabytes_en_5_anios = terabytes_por_dia * 365 * 5 // 55 PetaBytes</screen>
23042304
</itemizedlist>
23052305
</section>
23062306
</section>
2307+
<section xml:id="_tipos_de_configuración_de_servidores">
2308+
<title>Tipos de Configuración de Servidores</title>
2309+
<simpara>Los servidores pueden estar configurados de distinta forma
2310+
dependiendo de las necesidades de la aplicación y las capacidades
2311+
técnicas requeridas. En el ciclo de vida de la aplicación se puede
2312+
dar situaciones en las que se deba aumentar los recursos disponibles
2313+
y de que forma son distribuidos.</simpara>
2314+
<section xml:id="_servidor_único">
2315+
<title>Servidor Único</title>
2316+
<simpara>Este es una configuración inicial. Todos los servicios de la aplicación (servidor web, base de datos, almacenamiento de archivos, etc). Están dentro de
2317+
una sola máquina y comparten recursos de red, procesador, memoria y almacenamiento.</simpara>
2318+
<simpara><emphasis role="strong">Ventajas</emphasis></simpara>
2319+
<itemizedlist>
2320+
<listitem>
2321+
<simpara>Es fácil de configurar.</simpara>
2322+
</listitem>
2323+
<listitem>
2324+
<simpara>Es relativamente barato.</simpara>
2325+
</listitem>
2326+
<listitem>
2327+
<simpara>Ideal para aplicaciones pequeñas y de poco alcance.</simpara>
2328+
</listitem>
2329+
</itemizedlist>
2330+
<simpara><emphasis role="strong">Desventajas</emphasis></simpara>
2331+
<itemizedlist>
2332+
<listitem>
2333+
<simpara>Propenso a errores por agotamiento de memoria o disco.</simpara>
2334+
</listitem>
2335+
<listitem>
2336+
<simpara>Solamente un servidor, si este es atacado o comprometido en seguridad, puede significar una brecha total o caida total del servicio.</simpara>
2337+
</listitem>
2338+
<listitem>
2339+
<simpara>Puede tener mayor latencia para usuarios lejos de la región donde está ubicado el servidor.</simpara>
2340+
</listitem>
2341+
</itemizedlist>
2342+
</section>
2343+
<section xml:id="_servidor_de_base_de_datos_separado">
2344+
<title>Servidor de Base de Datos Separado</title>
2345+
<simpara>El siguiente nivel en la configuración es separar el servidor de la base de datos, dandole una instancia propia del servidor de aplicaciones.</simpara>
2346+
<simpara><emphasis role="strong">Ventajas</emphasis></simpara>
2347+
<itemizedlist>
2348+
<listitem>
2349+
<simpara>La base de datos tiene sus recursos separados del servidor de aplicaciones.</simpara>
2350+
</listitem>
2351+
<listitem>
2352+
<simpara>Permite escalar individualmente cada servidor según necesidades.</simpara>
2353+
</listitem>
2354+
<listitem>
2355+
<simpara>La seguridad es mayor al no compartir la misma máquina.</simpara>
2356+
</listitem>
2357+
</itemizedlist>
2358+
<simpara><emphasis role="strong">Desventajas</emphasis></simpara>
2359+
<itemizedlist>
2360+
<listitem>
2361+
<simpara>Aumenta los costos de mantenimiento al tener más máquinas funcionando.</simpara>
2362+
</listitem>
2363+
</itemizedlist>
2364+
</section>
2365+
<section xml:id="_una_máquina_por_servicio">
2366+
<title>Una Máquina por Servicio</title>
2367+
<simpara>Una vez que las necesidades de la aplicación lo requieran, se puede buscar la configuración a través de la separación de una máquina por servicio. Por ejemplo si la aplicación tiene: servidor web, base de datos, almacenamiento de archivos y procesamiento de datos. Se podría tener una máquina por cada elemento del sistema, una máquina para el servidor web, otra máquina para la base de datos, otra para el sistema de almacenamiento y otra para el procesamiento de datos.</simpara>
2368+
<simpara><emphasis role="strong">Ventajas</emphasis></simpara>
2369+
<itemizedlist>
2370+
<listitem>
2371+
<simpara>Cada componente es separado y puede escalar individualmente.</simpara>
2372+
</listitem>
2373+
</itemizedlist>
2374+
<simpara><emphasis role="strong">Desventajas</emphasis></simpara>
2375+
<itemizedlist>
2376+
<listitem>
2377+
<simpara>Los costos aumentan considerablemente.</simpara>
2378+
</listitem>
2379+
</itemizedlist>
2380+
</section>
2381+
</section>
23072382
<section xml:id="_escalado_horizontal_y_vertical">
23082383
<title>Escalado horizontal y vertical</title>
23092384
<simpara>La escalabilidad se refiere a la capacidad de una aplicación para manejar y soportar una mayor carga de trabajo sin sacrificar la latencia. Una aplicación necesita una potencia informática sólida para escalar bien. Los servidores deben ser lo suficientemente potentes para manejar mayores cargas de tráfico. Hay dos formas principales de escalar una aplicación: horizontalmente y verticalmente.</simpara>

docs/book/images/images/cc.png

1.63 KB
Loading

docs/book/images/images/cover.jpg

351 KB
Loading
626 KB
Loading
85.6 KB
Loading
12.3 KB
Loading
1.85 MB
Loading
84.5 KB
Loading
2.81 MB
Loading

0 commit comments

Comments
 (0)