Unidad I - Recursos y Servidores

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 17

Richard Añez

PROGRAMACIÓN WEB
RECURSOS Y SERVIDORES

EL SERVIDOR
Un servidor es un sistema informático que proporciona servicios a
otros sistemas informáticos, llamados clientes. Los servidores pueden
ser de todo tipo, desde computadoras personales dedicadas hasta
grandes máquinas de almacenamiento de datos. Pueden ejecutar una
variedad de servicios, incluidos servicios web, correo electrónico,
bases de datos y almacenamiento.

La función principal de un servidor es proporcionar recursos a los


clientes. Estos recursos pueden ser datos, software o incluso
capacidad de procesamiento. Los servidores se utilizan en una amplia
gama de aplicaciones, desde empresas hasta organizaciones
gubernamentales y hogares individuales.

EL CLIENTE
Un cliente es un sistema informático que solicita servicios a un
servidor. Los clientes pueden ser de todo tipo, desde computadoras
personales hasta dispositivos móviles. Pueden ejecutar una variedad
de aplicaciones, incluidos navegadores web, clientes de correo
electrónico, aplicaciones de oficina y juegos.

La función principal de un cliente es solicitar recursos al servidor.


Estos recursos pueden ser datos, software o incluso capacidad de
procesamiento. Los clientes se utilizan en una amplia gama de
aplicaciones, desde empresas hasta organizaciones gubernamentales
y hogares individuales.
VENTAJAS DEL MODELO CLIENTE-SERVIDOR
Escalabilidad: El modelo cliente-servidor es escalable, lo que
significa que se puede adaptar para satisfacer las necesidades
cambiantes de un sistema. Si el número de clientes aumenta, se
puede añadir más servidores para proporcionar el servicio a
todos los clientes.

Eficiencia: La carga de procesamiento se reparte entre el cliente y


el servidor. El cliente se encarga de la interfaz con el usuario y de
la presentación de los datos, mientras que el servidor se encarga
del procesamiento de los datos y del almacenamiento de los
datos.

Seguridad: Los datos sensibles pueden almacenarse en el


servidor, que está protegido por medidas de seguridad como
cortafuegos y antivirus.

Mantenimiento: Los cambios se pueden realizar en el servidor sin


afectar a los clientes.

DESVENTAJAS

Complejidad: El modelo cliente-servidor puede ser complejo de


implementar y administrar, ya que requiere dos componentes
diferentes: el cliente y el servidor.

Costo: Puede ser más costoso que otros modelos de arquitectura,


ya que requiere dos componentes diferentes.

Latencia: Puede introducir latencia en el sistema, ya que los datos


deben viajar entre el cliente y el servidor.
NORMAS Y ESTÁNDARES WEB

Los estándares web son normas y especificaciones técnicas creadas


para proteger el ecosistema web, con el fin de mantenerlo abierto,
gratuito y accesible para todos.

Durante las guerras de los navegadores entre Microsoft y Netscape,


ambas empresas se centraron en la implementación de nuevas
funciones en sus navegadores en lugar de resolver los problemas de
las funciones con las que ya eran compatibles, y también en añadir
funciones propias y crear funciones que fueran competencia directa
de las existentes en el otro navegador, pero implementadas de
manera incompatible.

En aquellos momentos, los desarrolladores se veían forzados a tratar


con niveles de confusión cada vez mayores cuando se intentaban
construir las páginas web, a veces hasta el punto de haber de
construir dos páginas diferentes, pero duplicadas en la práctica, para
cada uno de los dos principales navegadores, y otras simplemente
optando por ser compatibles sólo con un navegador, de manera que
los usuarios que utilizaran el otro no pudieran utilizar sus páginas.
Ésta era una manera muy mala de trabajar y la inevitable reacción
negativa de los desarrolladores no tardó en producirse.

En 1994, Tim Berners-Lee fundó el World Wide Web Consortium


(W3C) en el Massachusetts Institute of Technology, con el apoyo del
CERN, DARPA (como se había bautizado la ARPA) y la Comisión
Europea. La misión del W3C era estandarizar los protocolos y las
tecnologías utilizadas para construir la web, de manera que el
contenido estuviera disponible para la mayor parte posible de la
población del mundo.
Durante los años siguientes, el W3C publicó varias especificaciones
(denominadas recomendaciones) incluyendo HTML 4.0, el formato
para imágenes PNG y las versiones 1 y 2 de CSS (cascading style
sheets u hojas de estilo en cascada).

No obstante, el W3C no impone sus recomendaciones. Los fabricantes


sólo deben ajustarse a la documentación del W3C si quieren etiquetar
su producto como cumplidor del W3C. En la práctica, esto no es un
argumento de venta valioso porque casi todos los usuarios de la web
desconocen, y probablemente no les importa, quién es el W3C. En
consecuencia, las guerras de los navegadores continuaron sin trabas.

En 1998, el mercado de los navegadores estaba dominado por


Internet Explorer 4 y Netscape Navigator 4. Se había lanzado una
versión beta de Internet Explorer 5 que implementaba un nuevo
HTML dinámico de marca registrada. Ello significaba que los
desarrolladores web profesionales debían conocer cinco maneras
diferentes de escribir JavaScript.
En consecuencia, un grupo de desarrolladores y diseñadores web se
asociaron entre ellos. Este grupo se denominaba WaSP (Web
Standards Project, Proyecto de Estándares Web). La idea era que si los
documentos del W3C se llamaban estándares en vez de
recomendaciones podrían convencer a Microsoft y Netscape de que
les dieran su apoyo.

Aunque este proyecto era muy optimista para el 2009 no todas las
páginas estaban hechas con estándares web. Pero muchos les
hicieron caso. Los navegadores antiguos redujeron su cuota de
mercado y dos páginas web más de perfil muy alto se rediseñaron
utilizando estándares web.

También para esos años, Dave Shea creó una página web denominada
CSS Zen Garden. Esta ilustraba, verdaderamente, que todo el diseño
podía cambiar sólo modificando el estilo de la página; el contenido
podía seguir siendo idéntico. Desde entonces, en la comunidad de
desarrollo web profesional, los estándares web se han convertido en
un elemento de rigor.

EN 1998 NACE WEB STANDAR PROYECT (EL


PROYECTO ESTÁNDARES WEB) QUE SE
ENCARGÍA DE LA FORMULACIÓN DE
NORMAS QUE REDUZCAN EL COSTO Y LA
COMPLEJIDAD DEL DESARROLLO EN LA
WEB, ASÍ COMO INCREMENTAR LA
ACCESIBILIDAD Y VIABILIDAD DE
CUALQUIER DOCUMENTO PUBLICADO .

El W3C es el organismo de estándares web más conocido, pero hay otros como WHATWG
(que fueron responsables de la modernización del lenguaje HTML), ECMA (que publica el
estándar para ECMAScript, en el que se basa JavaScript), Khronos (que publica tecnologías
para gráficos 3D, como WebGL) y otras.
FUNCIÓN DEL W3C
La función principal del W3C es desarrollar y promover estándares
para la World Wide Web. Estos estándares incluyen:

Lenguajes de marcado: HTML, CSS y SVG son lenguajes de


marcado que se utilizan para definir la estructura, la apariencia y
el contenido de las páginas web.

Lenguajes de programación: JavaScript, ECMAScript y


WebAssembly son lenguajes de programación que se utilizan
para agregar interactividad y funcionalidad a las páginas web.

Protocolos: HTTP, HTTPS y WebSockets son protocolos que se


utilizan para transferir datos entre clientes y servidores web.

API: WebGL, WebRTC y WebAssembly son APIs que proporcionan


funcionalidades específicas para el desarrollo web.

El W3C también trabaja en el desarrollo de tecnologías y directrices


que hacen que la web sea más accesible, interoperable y accesible
para todos. Estas tecnologías y directrices incluyen:

Accesibilidad: El W3C desarrolla estándares y directrices para


hacer que la web sea más accesible para las personas con
discapacidades.

Interoperabilidad: El W3C trabaja para garantizar que los sitios


web y las aplicaciones sean compatibles con diferentes
navegadores y dispositivos.

Accesibilidad: El W3C trabaja para garantizar que la web sea


accesible para todos, independientemente de su ubicación,
idioma o dispositivo.
Algunos de los estándares Web más
conocidos y ampliamente utilizados son:

NORMAS Y ESTÁNDARES DE BASE DE DATOS

Las normas y estándares para bases de datos son un conjunto de


reglas y directrices que se utilizan para diseñar, implementar y
administrar bases de datos. Estos estándares ayudan a garantizar que
las bases de datos sean eficientes, seguras y escalables.

Algunos de los estándares más comunes para bases de datos


incluyen:

ANSI/SPARC : Instituto Nacional Estadounidense de Normas /


Grupo de Trabajo de Arquitectura de Sistemas de Información
Relacionales. Garantiza que las bases de datos relacionales sean
eficientes y escalables.

SQL: Lenguaje de consulta estructurado. Permite a crear bases de


datos relacionales que sean fáciles de usar y administrar.

ACID : Atomicidad, consistencia, aislamiento y durabilidad.


Garantiza que los datos en las bases de datos sean precisos y
seguros.
NORMAS Y ESTÁNDARES DE B/D, SOFTWARE Y EDITORES
Algunos ejemplos de software que cumplen con normas y estándares
para el desarrollo de aplicaciones y sistemas de información web son:

Herramientas de desarrollo web: Estas herramientas proporcionan


las capacidades necesarias para crear y editar código, diseños y otros
recursos web. Algunas herramientas de desarrollo web que cumplen
con normas y estándares incluyen Visual Studio Code, Eclipse y
Sublime Text.

Marcos y bibliotecas: Los marcos y bibliotecas proporcionan un


conjunto de herramientas y componentes prefabricados que pueden
ayudar a acelerar el desarrollo. Algunos marcos y bibliotecas web que
cumplen con normas y estándares incluyen React, Angular, Node.js y
Vue.js.

Lenguajes de programación: Los lenguajes de programación son


necesarios para crear el código que impulsa la aplicación. Algunos
lenguajes de programación web que cumplen con normas y
estándares incluyen JavaScript, HTML y CSS.

Bases de datos: Las bases de datos se utilizan para almacenar los


datos de la aplicación. Algunas bases de datos web que cumplen con
normas y estándares incluyen MySQL, PostgreSQL y MongoDB.

PLATAFORMA DE DESARROLLO INTEGRADA (IDE)


Una plataforma de desarrollo integrada (IDE) es una aplicación
informática que proporciona todas las herramientas y recursos
necesarios para desarrollar software. Las IDE suelen incluir un editor
de código, un depurador, un compilador y un entorno de ejecución.

Algunos ejemplos de IDE populares incluyen:

Visual Studio
Eclipse
IntelliJIDEA
Xcode
Android Studio
PLATAFORMA RAD
Las plataformas RAD (Rapid Application Development) son
herramientas que permiten a los desarrolladores crear aplicaciones
web y móviles rápidamente y con un mínimo de codificación. Estas
plataformas utilizan una variedad de técnicas, como la generación de
código automático, las interfaces de arrastrar y soltar y los
componentes prefabricados, para simplificar el proceso de desarrollo.

Algunas aplicaciones RAD son :

AppBuilder
Appian
Mendix
OutSystems

PLATAFORMA CMS
Los CMS son programas sistemas utilizados para crear sitios web,
blogs y otras aplicaciones que requieren la administración de
contenido.

Algunos CMS son:

Joomla
Drupal
Wix
Squarespace
Wordpress

PLATAFORMA DE BASE DE DATOS


Una plataforma de base de datos es un entorno que proporciona las
herramientas y recursos necesarios para crear, administrar y usar
bases de datos. Una plataforma de base de datos típica incluye un
sistema de administración de bases de datos (DBMS), herramientas de
administración de bases de datos, herramientas de desarrollo de
aplicaciones y herramientas de seguridad de bases de datos.
Algunos son:

Oracle Database
Microsoft SQL Server
IBM DB2
MySQL
PostgreSQL

APLICACIONES DE DISEÑO GRÁFICO


Las aplicaciones de diseño gráfico se utilizan para crear imágenes,
logotipos, iconos, gráficos web y otros elementos visuales. Hay una
amplia gama de aplicaciones de diseño gráfico disponibles, cada una
con sus propias fortalezas y debilidades.

Algunas aplicaciones de diseño gráfico son:

ILUSTRACIONES

Adobe Photoshop
Adobe Illustrator
AffinityDesigner
Procreate
CorelDRAW

ANIMACIONES

Adobe Animate
Blender
Cinema 4D
Moho Pro
Toon Boom H

VIDEO

Adobe Premier
Final Cut Pro
DaVinciResolve
Shotcut
iMovie
APLICACIONES DE COMPONENTE WEB
Las aplicaciones de componentes web se utilizan para crear
componentes web reutilizables. Los componentes web son piezas de
código o rutinas que se pueden usar para crear interfaces de usuario
consistentes y eficientes.

Algunos ejemplos de aplicaciones de componentes web populares


son:

Angular
React
Vue.js
Node.js
Svelte
Tailwind CSS

PROTOCOLOS
Un protocolo en Internet es un conjunto de reglas que rigen la
comunicación entre dos dispositivos en la red. Los protocolos definen
cómo los dispositivos se identifican entre sí, cómo se envían y
reciben los datos y cómo se manejan los errores.

Los protocolos son esenciales para el funcionamiento de Internet. Sin


ellos, los dispositivos no podrían comunicarse de forma fiable y
segura.

Los protocolos se pueden clasificar en diferentes categorías, según su


función. Algunas de las categorías más comunes son:

Protocolos de capa de aplicación: Estos protocolos definen cómo


se realizan las tareas de aplicación, como el envío de correo
electrónico o la navegación web.
Protocolos de capa de transporte: Estos protocolos se encargan de
la entrega de datos entre dos dispositivos en la red.
Protocolos de capa de red: Estos protocolos se encargan de
enrutar los datos a través de la red.
Protocolos de capa de enlace: Estos protocolos se encargan de
transferir los datos entre dos dispositivos conectados
directamente.
Algunos de los protocolos más importantes de Internet son:

TCP/IP: Es el conjunto de protocolos fundamental que sustenta


Internet. Define cómo los datos se dividen en paquetes, cómo se
envían los paquetes a través de la red y cómo se vuelven a
ensamblar en el destino.

HTTP: Es el protocolo que se utiliza para transferir páginas web


entre los navegadores web y los servidores web.

HTTPS: Es una versión segura de HTTP que utiliza el cifrado para


proteger los datos que se transmiten entre el navegador y el
servidor.

SSH: Es un protocolo de red que permite la conexión remota


segura a un dispositivo. SSH utiliza el cifrado para proteger los
datos que se transmiten entre el cliente y el servidor, lo que lo
hace muy seguro.

SMTP: Es el protocolo que se utiliza para enviar correo


electrónico.

POP3: Es el protocolo que se utiliza para descargar correo


electrónico de un servidor de correo.

IMAP: Es un protocolo que se utiliza para acceder a correo


electrónico de un servidor de correo.

FTP: Es un protocolo de red que permite la transferencia de


archivos entre dos dispositivos conectados a una red, como
Internet.

SFTP: es una extensión del protocolo SSH, que también se utiliza


para la conexión remota segura. SFTP utiliza el mismo canal
seguro que SSH para transferir los datos, lo que lo hace muy
seguro.
SERVIDORES DE PROTOCOLOS WEB
Los servidores web más usados son Apache, Nginx, Microsoft IIS y
LiteSpeed, entre ellos los más populares del mundo son Apache y IIS.
Ambos servidores son gratuitos y ofrecen una amplia gama de
funciones y características.

Apache es un servidor web de código abierto desarrollado y


mantenido por la Apache Software Foundation. Es el servidor web
más popular del mundo, con una cuota de mercado de más del
60 %.

IIS es un servidor web desarrollado por Microsoft. Es el servidor


web predeterminado de Windows Server, y se utiliza ampliamente
en entornos corporativos.

Nginx: es un servidor web/proxy inverso ligero de alto rendimiento


y un proxy para protocolos de correo electrónico. ​Es software libre
y de código abierto, licenciado bajo la Licencia BSD simplificada;
también existe una versión comercial distribuida bajo el nombre
de Nginx Plus.

LiteSpeed: LiteSpeed ​Web Server es un software de servidor web


patentado. Es el cuarto servidor web más popular, y se estima que
lo utiliza el 10% de los sitios web a partir de julio de 2021. LSWS
es desarrollado por LiteSpeed ​Technologies, una empresa privada.

SERVIDOR DE APLICACIONES WEB APACHE TOMCAT


Apache Tomcat es un servidor de aplicaciones web de código abierto
desarrollado por la Apache Software Foundation. Es uno de los
servidores de aplicaciones web más populares del mundo, utilizado
por millones de desarrolladores y empresas de todo el mundo.

Tomcat es un servidor de aplicaciones web de capa 7, lo que significa


que se encarga de procesar las solicitudes HTTP y generar las
respuestas HTTP. Puede ejecutar aplicaciones web escritas en una
variedad de lenguajes de programación, sin embargo se especializa
en ejecutar aplicaciones web escritas en Java.
PROTOCOLO HTTP
HTTP, siglas de HyperText Transfer Protocol, es un protocolo de
comunicación que permite la transferencia de información entre un
cliente y un servidor. En el contexto de la World Wide Web (WWW),
HTTP se utiliza para transferir páginas web entre los navegadores web
y los servidores web.

HTTP admite varios métodos de solicitud, que se utilizan para


diferentes propósitos.

Los métodos de solicitud más comunes son:

GET: Se utiliza para recuperar un recurso, como una página web


o un archivo.

POST: Se utiliza para enviar datos al servidor, como datos de


formulario o archivos.

PUT: Se utiliza para actualizar un recurso existente.

DELETE: Se utiliza para eliminar un recurso.

HTTP también utiliza códigos de estado para indicar el resultado de


una solicitud.

Los códigos de estado comunes incluyen :

200 OK: La solicitud se ha realizado correctamente.

404 NotFound: El recurso solicitado no se encuentra.

500 Internal Server Error: Se ha producido un error en el


servidor.
BASE DE DATOS MYSQL
MySQL es un sistema de gestión de bases de datos relacionales
(RDBMS) de código abierto, multiplataforma y gratuito.

Se basa en el modelo relacional, que organiza los datos en tablas.


Cada tabla tiene un conjunto de columnas, que definen el tipo de
datos que se pueden almacenar en cada columna. Las filas de una
tabla representan los datos individuales que se almacenan en la tabla.

MySQL utiliza el lenguaje de consulta estructurado (SQL) para acceder


y manipular los datos de las bases de datos. SQL es un lenguaje
estandarizado que se utiliza en la mayoría de los RDBMS.

SISTEMAS OPERATIVOS LINUX Y WINDOWS

El sistema operativo para servidores Linux es un sistema operativo


tipo UNIX con todas las funciones correspondientes. Es el sistema
operativo dominante en servidores y superordenadores.

Windows Server no es un Unix, por lo que requiere más recursos


para funcionar, es decir, una máquina más potente para su ejecución.
Su licencia es algo costosa, por lo que no es una buena alternativa
para algunos, ni tampoco es la opción favorita desde el punto de vista
de la administración. El motivo por el que se suele elegir Windows
server es que se vaya a trabajar con aplicaciones basadas en
tecnología de Microsoft como ASP.NET y bases de datos SQL Server,
tecnologías que un servidor Linux directamente no puede ejecutar.
DIFERENCIAS

También podría gustarte