Red de conocimiento informático - Aprendizaje de código fuente - ¡Se necesita urgentemente papel de base de datos! ! Suma 1000 puntos

¡Se necesita urgentemente papel de base de datos! ! Suma 1000 puntos

1. Tres Mundos

1. El Mundo Real Los objetos que las personas manejan existen en el mundo real. Hay conexiones entre cosas y cosas en el mundo real. Esta conexión existe objetivamente y está determinada por la naturaleza de las cosas mismas. Por ejemplo, el sistema de enseñanza de una escuela incluye profesores, estudiantes y cursos. Los profesores enseñan a los estudiantes y los estudiantes toman cursos optativos y obtienen resultados.

2. Mundo conceptual El mundo conceptual es el reflejo del mundo real en la mente de las personas. Es una descripción abstracta de las cosas objetivas y sus conexiones, produciendo así un modelo conceptual. El modelo conceptual es el nivel intermedio que debe pasar del mundo real al mundo de las máquinas. Se trata de los siguientes términos:

Entidad: Llamamos a entidades que existen objetivamente y se pueden distinguir entre sí. Las entidades pueden ser cosas reales o eventos abstractos. Como un empleado, un juego, etc.

Conjunto de entidades: Una colección de entidades del mismo tipo se denomina conjunto de entidades. Como todos los empleados. Preste atención a distinguir los conceptos de "tipo" y "valor". Por ejemplo, cada empleado es un "valor" específico del "tipo" de entidad de empleado.

Atributos: Las características que describen una entidad se denominan atributos. Como por ejemplo el número de empleado del empleado, nombre, sexo, fecha de nacimiento, título profesional, etc.

Palabra clave: si el valor de un determinado atributo o combinación de atributos puede identificar de forma única cada entidad en el conjunto de entidades, se puede seleccionar como palabra clave. Una palabra clave utilizada como identificador, también llamada código. Por ejemplo, se puede utilizar "número de empleado" como palabra clave.

Contacto: La correspondencia entre conjuntos de entidades se denomina contacto, y refleja la interconexión entre cosas del mundo real. Hay dos tipos de conexiones. Una es la conexión entre atributos dentro de la entidad. La otra es la conexión entre entidades.

3. Mundo de las máquinas Los datos almacenados en el sistema informático son el resultado de la digitalización de cosas en el mundo conceptual. Para reflejar con precisión las cosas en sí y las diversas conexiones entre ellas, los datos de la base de datos deben tener una determinada estructura, y esta estructura está representada por un modelo de datos. El modelo de datos abstrae aún más las entidades en el mundo conceptual y las relaciones entre entidades de una manera que sea conveniente para el procesamiento informático.

El modelo de datos debe cumplir tres requisitos: primero, puede simular el mundo real de manera más realista; segundo, es fácil de entender para las personas; tercero, es fácil de implementar en la computadora; La estructura de datos, las operaciones de datos y las restricciones de integridad son los tres elementos que constituyen el modelo de datos. Los modelos de datos incluyen principalmente modelos de red, modelos jerárquicos, modelos relacionales, etc., que modelan datos desde la perspectiva de los sistemas informáticos y se utilizan para la implementación de DBMS.

Las bases de datos relacionales utilizan el modelo relacional como forma de organizar los datos. La base de datos relacional es reconocida como el sistema de gestión de bases de datos más prometedor debido a su estricta teoría matemática, su uso simple y flexible y su fuerte independencia de los datos. Se ha desarrollado muy rápidamente y ahora se ha convertido en el sistema de gestión de bases de datos dominante. Desde la década de 1980, los sistemas de gestión de bases de datos lanzados como productos comerciales son casi todos relacionales, como Oracle, Sybase, Informix, Visual FoxPro, etc.

La base de datos en red también se denomina base de datos web. Uno de los factores que promueve el desarrollo de Internet es la tecnología web. Desde la tecnología de páginas web estáticas (HTML) hasta la tecnología de páginas web dinámicas (CGI, ASP, PHP, JSP, etc.), la tecnología web ha experimentado un importante proceso de transformación. La Web ya no se limita a brindar servicios de información a través de páginas web estáticas, sino que se ha convertido en páginas web dinámicas que pueden brindar servicios interactivos de consulta de información, posibilitando servicios de bases de datos de información. La base de datos web es la integración de la tecnología de base de datos y la tecnología web, lo que hace que el sistema de base de datos sea una parte importante e integral de la Web, logrando así una combinación perfecta de tecnología de base de datos y red. Esta combinación no sólo reúne todas las ventajas de la Web y la base de datos, sino que también aprovecha al máximo los recursos de información de una gran cantidad de bases de datos existentes. La Figura 1-1 es el diagrama de estructura básica de una base de datos web, que consta de cuatro partes: servidor de base de datos, middleware, servidor web y navegador.

La estructura básica de la base de datos web

Su proceso de trabajo se puede describir simplemente como: los usuarios acceden a la base de datos a través del servidor web de manera interactiva a través de la interfaz de operación del lado del navegador.

La información enviada por el usuario a la base de datos y la información devuelta al usuario por la base de datos se muestran en forma de páginas web.

1.1.1 Tecnología de Internet y protocolos relacionados

La tecnología de Internet juega un papel importante en la tecnología de bases de datos web. Internet (Internet) se refiere específicamente a la red informática abierta más grande del mundo, compuesta por muchas redes interconectadas, y la información se transmite en la red informática a través de varios protocolos. Los protocolos TCP/IP son los dos protocolos más básicos utilizados en Internet. Por tanto, también se puede decir que Internet es una red informática global basada en el principio de conmutación de paquetes y el protocolo TCP/IP. Agrupa información y la transmite en unidades de paquetes de datos. Cuando Internet transmite información, realiza principalmente dos tareas.

(1) Divida correctamente el archivo de información de origen en paquetes de datos y vuelva a ensamblar con precisión los paquetes de datos del archivo de información de origen en el destino.

(2) Envía el paquete de datos al destino con precisión.

La función del protocolo TCP/IP es completar las dos tareas anteriores, estandarizar el método de transmisión de datos y el formato de datos entre todas las computadoras de la red y proporcionar un método estándar para empaquetar y direccionar datos.

1. Protocolo TCP/IP

El protocolo TCP (Protocolo de control de transmisión, Protocolo de control de transmisión) especifica las reglas a seguir y las operaciones a realizar para dividir datos y volver a ensamblar datos. El protocolo TCP puede garantizar la exactitud de la transmisión de datos. Si se pierden datos, TCP los reenviará.

2. Protocolo IP

La transmisión de datos en Internet suele realizarse a largas distancias, por lo que el proceso de transmisión debe implementarse mediante una transferencia de estación a estación mediante un enrutador. Un enrutador es una computadora especial que detecta la dirección del host de destino de un paquete y luego decide dónde enviar el paquete. El protocolo IP (Protocolo de Internet) estipula una dirección para cada computadora en Internet, llamada dirección IP. El estándar de dirección IP se compone de 4 partes (por ejemplo, 202.112.203.11 Las dos primeras partes especifican la agencia de gestión que utiliza actualmente la red, la tercera parte estipula la dirección de red utilizada actualmente y la cuarta parte estipula la computadora utilizada actualmente). DIRECCIÓN. .

Los principales servicios que se prestan en Internet incluyen correo electrónico, FTP, BBS, Telnet, WWW, etc. Entre ellos, WWW (World Wide Web) se ha convertido en el servicio más importante de Internet debido a sus ricos recursos de información.

3. Protocolo HTTP

El protocolo HTTP (Protocolo de transferencia de hipertexto, Protocolo de transferencia de hipertexto) se utiliza en WWW. Su función es completar la transmisión de datos HTML entre el navegador del cliente y el servidor web.

1.1.2 El principio de funcionamiento y los pasos de funcionamiento de la Web

La World Wide Web se conoce como Web. La Web puede describirse como un sistema de información de hipertexto gráfico global, interactivo, dinámico, multiplataforma, distribuido y que se ejecuta en Internet.

1. Cómo funciona la Web

La Web se creó junto con la tecnología de Internet. En una red informática, una computadora que proporciona servicios web se denomina servidor web. La Web utiliza un método de trabajo navegador/servidor. En cada servidor web se coloca una gran cantidad de información web. La unidad básica de información web es una página web (página web), y varias páginas web constituyen un nodo web. La página de inicio de cada nodo web se denomina "página de inicio" y tiene una dirección URL (dirección del Localizador uniforme de recursos). Los nodos web y las páginas web están organizados con una estructura de hipertexto (estructura de red no lineal).

2. Los pasos de trabajo de Web

Los pasos de trabajo de Web son los siguientes.

(1) El usuario abre el software del navegador (como Internet Explorer) en la computadora cliente.

(2) El usuario ingresa la dirección URL de la página de inicio web que se iniciará y el navegador generará una solicitud HTTP.

(3) El navegador se conecta al servidor web especificado y envía una solicitud HTTP.

(4) El servidor web recibe la solicitud HTTP, la procesa en consecuencia de acuerdo con el contenido de la solicitud y luego envía la página web de regreso al navegador en formato de archivo HTML.

(5) El navegador muestra la página web en la pantalla

Figura 1-2 Pasos de trabajo de la Web

1.1.3 Lenguaje de marcado en el. Mundo WWW

1. Lenguaje HTML

HTML (Hypertext Markup Language, Lenguaje de marcado de hipertexto) es un lenguaje informático para la creación de páginas web. La llamada página web es en realidad un documento HTML. El contenido del documento consta de texto y marcado HTML. La extensión de un documento HTML es .html o .htm. El navegador es responsable de interpretar las etiquetas del documento HTML y mostrar el documento HTML como una página web.

(1) Etiquetas HTML

La función de las etiquetas HTML es indicarle al navegador la estructura y el formato de la página web. Cada etiqueta está encerrada entre corchetes angulares <>. La mayoría de las etiquetas tienen una etiqueta de inicio y una etiqueta de final. Las etiquetas no distinguen entre mayúsculas y minúsculas. La mayoría de las etiquetas vienen con sus propios atributos. Por ejemplo, la etiqueta de fuente tiene atributos como CARA, COLOR y TAMAÑO: CARA define la fuente; COLOR define el color de la fuente. TAMAÑO define el tamaño de la fuente.

Usa el formato: BEIJING .

Hay muchos enlaces de texto y enlaces de imágenes en las páginas web. Los enlaces, también conocidos como hipervínculos, se utilizan para vincular a otras páginas web de la WWW. La etiqueta que representa un hipervínculo en un documento HTML es , y la URL de la página web vinculada se señala mediante el atributo HREF.

Usar formato: PEKÍN .

(2) Programa HTML

El programa HTML debe comenzar con la etiqueta y terminar con la etiqueta . Consta principalmente de dos partes entre las etiquetas y : el encabezado del archivo y el cuerpo del archivo. El encabezado del archivo se identifica con la etiqueta y el cuerpo del archivo se identifica con la etiqueta . El encabezado del archivo suele contener información sobre toda la página web. Por ejemplo, la etiqueta se usa para describir el nombre de la página web; la etiqueta se usa para describir otra información sobre la página web, como el nombre del diseñador y los derechos de autor. información. Todo el contenido que se mostrará en el navegador se denomina cuerpo principal de la página web y debe colocarse en la etiqueta . A continuación se muestra un programa HTML para una página web vacía.

(Escribe el título de la página web en esta etiqueta)

(Escribe el contenido de la página web en esta etiqueta)

(3) Especificación HTML

La especificación HTML, también conocida como estándar HTML, está siempre en desarrollo. Con cada nueva versión, se agregan nuevas funciones y contenido a HTML. Los detalles sobre la versión HTML están disponibles en www.w3.org.

En diferentes navegadores, el efecto de visualización de las páginas web puede ser diferente.

Cada navegador utiliza su propia forma única de interpretar el marcado en documentos HTML y la mayoría de los navegadores no son totalmente compatibles con todas las funciones de HTML. Porque empresas como Microsoft y Netscape han desarrollado algunas etiquetas y atributos HTML únicos basados ​​en el estándar HTML, que se denominan extensiones HTML. Estas etiquetas y atributos solo son reconocidos por sus propios navegadores y no pueden ser reconocidos por los navegadores de otras empresas. Si el navegador no reconoce la etiqueta en el documento HTML, la ignorará.

(4) Entorno de edición y entorno de ejecución del programa HTML

El documento HTML es un archivo de texto normal (ASCII) y no contiene ninguna información relacionada con la plataforma o el programa. Por lo tanto, los documentos HTML se pueden generar fácilmente utilizando cualquier editor de texto. Cabe señalar que la extensión del documento HTML debe ser .html o .htm. Los documentos HTML se pueden ejecutar en cualquier navegador y el código fuente HTML de la página web se puede ver en el navegador.

Los tipos y el uso de etiquetas en lenguaje HTML se presentarán con más detalle en el Capítulo 5.

2. Lenguaje de marcado extensible (XML)

HTML es el lenguaje universal en la Web Con la popularidad de Internet, los archivos web en la WWW se han vuelto cada vez más complejos y diversificados, y la gente ha comenzado a sentir que HTML lo es. un formato fijo. Deficiencias en el lenguaje de marcado. En 1996, el W3C comenzó a investigar sobre el lenguaje de seguimiento HTML y lanzó oficialmente XML (Lenguaje de marcado extensible, lenguaje de marcado extensible) en 1998. XML proporciona un enfoque más flexible que HTML al diseñar páginas web.

(1) Características del lenguaje XML

XML es un metalenguaje de marcado formado por la organización internacional W3C simplificando el estándar SGML (Standard Generalized Markup Language) para adaptarse a Aplicaciones WWW. En pocas palabras, XML es un lenguaje universal que utiliza marcas para describir contenido o información formal relacionada con el contenido. Un documento XML consta de datos de caracteres y marcas.

Como lenguaje de metaetiquetas, XML ya no fija etiquetas, lo que permite a los diseñadores de páginas web definir un número ilimitado de etiquetas para describir el contenido y también permite a los diseñadores crear sus propias reglas de uso.

(2) XML DTD

DTD (Definición de tipo de documento, definición de tipo de documento) es un conjunto de especificaciones técnicas para lenguajes de marcado personalizados aplicados en documentos XML. La DTD define el significado de las etiquetas y las reglas gramaticales para las etiquetas. Las reglas gramaticales determinan qué etiquetas se utilizan en documentos XML, en qué orden deben aparecer, cómo se anidan las etiquetas, qué etiquetas tienen atributos, etc. Una DTD puede estar contenida dentro del documento XML que describe, pero normalmente es un documento único o una serie de documentos. Como archivo externo, puede ser compartido por diferentes documentos XML a través de un enlace URL.

XML abre la definición de DTD. Diferentes industrias pueden definir DTD que describen el contenido de acuerdo con sus necesidades reales para adaptarse a las necesidades de intercambio y archivo de información dentro de la industria. Por lo tanto, han surgido una gran cantidad de lenguajes de marcado adecuados para diferentes industrias y plataformas.

(3) XML CSS y Los detalles del método de visualización afectan, por otro lado, permite definir diferentes métodos de visualización para los mismos datos, de modo que sean adecuados para diferentes aplicaciones y diferentes medios. , para que los datos XML se puedan reutilizar en la mayor medida posible. La forma de visualización de los datos del documento XML se define mediante hojas de estilo. CSS (Hojas de estilo en cascada) es una hoja de estilo en cascada estándar utilizada en XML, y XSL (Lenguaje de estilo extensible) es un lenguaje de estilo extensible.

Debido a que XML permite a los usuarios crear cualquier etiqueta deseada y los navegadores generales no pueden anticipar el significado de las etiquetas de usuario ni proporcionar reglas para mostrar estas etiquetas, los usuarios deben crear documentos XML por sí mismos. la hoja de estilo se puede compartir libremente.

El navegador procesa un documento XML asociando primero el archivo de hoja de estilo que especifica. Si la hoja de estilo es un archivo XSL, los datos XML se convierten de acuerdo con las regulaciones y luego se muestran en base al propio XSL. Lenguaje XML y puede convertir XML a HTML antes de mostrarlo. Si la hoja de estilo es un archivo CSS, el navegador asignará un conjunto de estilos a cada etiqueta de acuerdo con las disposiciones de la hoja de estilo antes de mostrarla.

1.2 Tecnología de acceso a bases de datos web

La tecnología de acceso a bases de datos web generalmente se implementa a través de una estructura de tres niveles, como se muestra en la Figura 1-3. Los métodos técnicos actuales para establecer conexión y acceso a bases de datos web se pueden resumir en tecnología CGI, tecnología ODBC, ASP, JSP y tecnología PHP.

Estructura de tres niveles de acceso a bases de datos web

1.2.1 Tecnología CGI

CGI (Common Cateway Interface, Common Gateway Interface) es una especie de servidor web ejecutar El método basado en el programa de entrada del navegador web es la primera solución para acceder a la base de datos. Los programas CGI pueden establecer una conexión entre una página web y una base de datos, convertir los requisitos de consulta del usuario en comandos de consulta de la base de datos y luego devolver los resultados de la consulta al usuario a través de la página web. El principio básico del funcionamiento de un CGI se muestra en la Figura 1-4.

Los programas CGI necesitan acceder a la base de datos a través de una interfaz. Hay varias interfaces. El sistema de base de datos proporciona varias interfaces de base de datos para programas CGI como Perl, C/C++, VB, etc. Para utilizar varios sistemas de bases de datos, los programas CGI admiten el modo ODBC y acceden a la base de datos a través de la interfaz ODBC.

Flujo de trabajo CGI

1.2.2 Tecnología ODBC

ODBC (Open Database Connectivity, interconexión abierta de bases de datos) es una interfaz de programa de aplicación que utiliza SQL (API). La ventaja más importante de ODBC es que los programas que genera no tienen nada que ver con el sistema de base de datos. Proporciona una interfaz unificada para que los programadores escriban fácilmente aplicaciones de bases de datos que accedan a varios DBMS, lo que permite el intercambio de datos entre aplicaciones y fuentes de bases de datos. La estructura interna de ODBC consta de cuatro capas: capa de aplicación, capa de administrador de controladores, capa de controlador y capa de fuente de datos. La relación entre ellos se muestra en la Figura 1-5. Debido a que ODBC está disponible para diferentes productos de bases de datos, muchas extensiones de servidor utilizan estructuras de sistema que incluyen una capa ODBC.

La estructura interna de ODBC

El servidor web envía una solicitud SQL al sistema de base de datos a través del controlador de base de datos ODBC. El sistema de base de datos recibe la declaración de consulta SQL estándar y ejecuta el resultado de la consulta. Luego se transmite de regreso al servidor web a través de ODBC, y el servidor web transmite el resultado al navegador web como una página web HTML. El principio de funcionamiento se muestra en la Figura 1-6.

El servidor Web accede a la base de datos a través de ODBC.

Debido a las ventajas de programación que muestra el lenguaje Java, se ha ganado el apoyo de muchos fabricantes de bases de datos. En términos de procesamiento de bases de datos, JDBC proporcionado por Java proporciona una interfaz de programación de aplicaciones estándar para aplicaciones de desarrollo de bases de datos. Al igual que ODBC, JDBC también es una API especial, que es una interfaz de programación de aplicaciones Java que se utiliza para ejecutar declaraciones SQL. Especifica cómo Java intercambia datos con la base de datos. Las aplicaciones de bases de datos escritas en Java y JDBC son independientes de la plataforma.

1.2.3 Tecnología ASP, JSP y PHP

ASP es una tecnología de páginas web dinámicas desarrollada por Microsoft y se utiliza principalmente en plataformas Windows NT+IIS o Windows 9x+PWS. Para ser precisos, ASP no es un lenguaje, sino un entorno de desarrollo en el lado del servidor web. ASP se puede utilizar para generar y ejecutar aplicaciones de servicios web dinámicas, interactivas y de alto rendimiento.

ASP admite varios lenguajes de secuencias de comandos, además de VBScript y Pscript, también admite el lenguaje Perl. Se pueden utilizar varios lenguajes de secuencias de comandos en el mismo archivo ASP para aprovechar varios lenguajes de secuencias de comandos. Sin embargo, ASP solo admite VBScript y Pscript de forma predeterminada. Si desea utilizar otros lenguajes de secuencias de comandos, debe instalar el motor de secuencias de comandos correspondiente. ASP admite la llamada de objetos ADO del componente ActiveX en el lado del servidor para implementar operaciones de base de datos. En una aplicación específica, si hay una solicitud para acceder a la base de datos en el lenguaje de script, se puede conectar a la base de datos backend a través de ODBC y la operación de acceso a la biblioteca se puede realizar a través de ADO. La tecnología de programación de ASP se presentará en detalle en el Capítulo 7.

JSP es una nueva generación de tecnología de desarrollo web lanzada por Sun. Como miembro de la familia Java, puede ejecutarse en casi todas las plataformas de sistemas operativos y servidores web, por lo que JSP tiene una gama más amplia de plataformas operativas. Actualmente, el único lenguaje de programación soportado por JSP es Java. JSP usa JDBC para acceder a la base de datos. La base de datos de destino debe tener un controlador JDBC, que es una interfaz de la base de datos a Java. Esta interfaz proporciona métodos estándar para permitir que las aplicaciones Java se conecten a la base de datos y realicen operaciones en la base de datos. JDBC no requiere la creación de una fuente de datos en el servidor. Las sentencias SQL se pueden ejecutar a través de JDBC y JSP.

PHP es un lenguaje de programación integrado multiplataforma lanzado por Rasmus Lerdorf. Puede ejecutarse en sistemas operativos populares como Windows, UNIX, Linux y servidores web como IIS, Apache y Netscape. cambiar de plataforma, no es necesario transformar el código PHP. PHP es un software de código abierto desarrollado mediante la cooperación de Internet. Toma prestada la sintaxis de los lenguajes C, Java y Perl y la combina con las características propias de PHP para escribir rápidamente páginas generadas dinámicamente. PHP puede acceder a varias bases de datos a través de ODBC, pero principalmente accede a la base de datos directamente a través de funciones. PHP admite la mayoría de las bases de datos actuales y proporciona muchas funciones para la interconexión directa con varias bases de datos, incluidas Sybase, Oracle, SQL Server, etc. Entre ellas, la interconexión con la base de datos SQL Server es la mejor combinación.

1.3 Sistema jerárquico del sistema de aplicación de bases de datos en red

Actualmente, la tecnología de Internet/Intranet se está desarrollando extremadamente rápido y cada vez se ejecuta más software de aplicación de bases de datos en el entorno de Internet/Intranet. Antes de esto, el desarrollo de sistemas de aplicaciones de bases de datos pasó por estructuras independientes, estructuras centralizadas y estructuras cliente/servidor (C/S). Con la popularidad de Internet, las estructuras navegador/servidor (B/S) y Multi-. estructura de capas. Al construir un sistema de aplicaciones, lo primero que se debe considerar es la arquitectura del sistema. La estructura a adoptar depende de factores como el entorno de red y los requisitos de la aplicación del sistema.

1.3.1 Estructura Cliente/Servidor

1. Estructura C/S de dos niveles

La estructura C/S de dos niveles es una estructura de sistema de base de datos muy popular. En esta estructura, el cliente realiza una solicitud y el servidor responde a la solicitud de servicio del cliente. Separa la interfaz y las operaciones de procesamiento de datos entre el front-end (cliente) y el back-end (servidor). Esta característica principal hace que la velocidad de trabajo del sistema C/S dependa principalmente del servidor que realiza grandes cantidades de operaciones de datos. En lugar del equipo de hardware de front-end, también reduce en gran medida los requisitos de velocidad de transmisión de la red, porque solo el cliente necesita enviar la solicitud de servicio al servidor de la base de datos, y el servidor de la base de datos solo envía los resultados del servicio; hacia el extremo delantero, como se muestra en la Figura 1-7.

Durante el diseño, los datos podrán ser tratados de las siguientes formas diferentes.

(1) Durante el procesamiento, el cliente primero solicita datos del servidor y luego libera la base de datos, es decir, el cliente emite una solicitud de archivo, procesa los datos en el lado del cliente y finalmente envía el resultados de vuelta al servidor. La desventaja de este método de procesamiento es obvia: todo el procesamiento de la aplicación se completa en el cliente, lo que requiere que la computadora del cliente tenga capacidades suficientes para ejecutar cualquier programa requerido. Para empeorar las cosas, dado que todo el procesamiento se realiza en el lado del cliente, el archivo completo debe transferirse al cliente cada vez que se ejecuta antes de poder ejecutarlo.

Por ejemplo: hay 30.000 registros en la tabla de Estudiantes y el cliente emite el comando:

Seleccione * De Estudiante Donde Sno='200101'

Este comando requerirá que el servidor agregue Todos los registros se transmiten al cliente y luego la consulta se ejecuta en el cliente y solo se usa un registro en el resultado. Si el registro consultado no existe, los datos transmitidos a través de la red son en realidad inútiles. Una cantidad tan grande de transmisión de datos es inimaginable. Por ello se han propuesto arquitecturas cliente/servidor que pueden ejecutar parte del código en el servidor.

(2) Durante el procesamiento, el cliente acepta la solicitud del usuario y la envía al servidor; el servidor procesa la solicitud del usuario y finalmente transmite el resultado al cliente para su visualización o impresión. Este método de procesamiento requiere menos tráfico de red. El cliente envía una solicitud de procesamiento al servidor, no una solicitud de archivo. El código de la solicitud de procesamiento se ejecuta en el servidor y los resultados procesados ​​se envían al cliente.

De esta manera, para tareas específicas, los programas del cliente y los programas del servidor trabajan juntos: el código del lado del cliente se utiliza para completar la entrada y salida del usuario y la verificación de datos, mientras que el servidor- El código lateral completa la operación de la base de datos.

Otra característica principal de la estructura cliente/servidor es la independencia de las plataformas de software y hardware. El sistema de administración de bases de datos en el servidor de bases de datos es responsable centralmente de administrar los datos. Proporciona un entorno de uso abierto para el cliente. El cliente accede a la base de datos a través de interfaces de bases de datos, como ODBC (Conectividad abierta de bases de datos) y el lenguaje SQL. , Independientemente del uso que haga el cliente de No importa qué tipo de hardware y software, siempre que pueda conectarse al servidor a través de la red y el programa de interfaz de base de datos, podrá acceder a la base de datos.

En la estructura cliente/servidor, al cliente a menudo se le llama frontend y al servidor se le llama backend. Las funciones de la aplicación en primer plano incluyen la interfaz de usuario, recibir datos del usuario, procesar la lógica de la aplicación, realizar solicitudes en segundo plano, recibir resultados devueltos por el fondo y, finalmente, mostrar los resultados devueltos al usuario en un determinado formato o método. El servidor en segundo plano es responsable de compartir dispositivos externos, acceder a datos compartidos, responder a las solicitudes del cliente front-end y enviar resultados, etc. Las aplicaciones y los datos en primer plano son generalmente exclusivos de los usuarios, mientras que los datos y el código en segundo plano son compartidos por todos los usuarios.

Dado que el servidor de la base de datos no solo debe administrar datos compartidos y garantizar la integridad de los datos, sino también ejecutar parte del código para completar algunas solicitudes de procesamiento del cliente, impone mayores requisitos a la computadora utilizada para el servidor. . Es mejor utilizar un servidor dedicado con una velocidad de procesamiento rápida, disco duro y memoria de gran capacidad y soporte para dispositivos de almacenamiento de gran capacidad, como cintas.

La estructura cliente/servidor mencionada anteriormente divide las aplicaciones en niveles de cliente y servidor, lo que se denomina estructura cliente/servidor de dos niveles. En resumen, el método de trabajo básico de la estructura C/S de dos niveles es que el programa cliente envía una solicitud SQL al servidor de la base de datos y el servidor devuelve datos o resultados.

Hay dos formas de implementar esta estructura C/S. Una es que el cliente completa la parte de presentación y la parte lógica de la aplicación, mientras que el servidor completa la parte de acceso a datos. aplicable Es adecuado para situaciones donde la aplicación es relativamente simple y la cantidad de acceso a datos no es muy grande. El otro está centrado en el servidor y coloca algunas partes importantes de la lógica de la aplicación en el servidor, lo que puede aprovechar al máximo la potencia informática del servidor y reducir los datos que deben transmitirse en la red. Generalmente en forma de procedimientos almacenados y activadores, pero los procedimientos almacenados dependen de una base de datos específica y son difíciles de trasplantar entre diferentes bases de datos. La estructura C/S de tres niveles puede resolver bien este problema.

Nota: Un disparador es un código de evento a nivel de registro que se ejecuta después de las operaciones de inserción, eliminación y modificación en el sistema de base de datos. Diferentes eventos pueden corresponder a diferentes acciones. Generalmente hay 3 tipos de activadores: activadores INSERTAR, activadores ELIMINAR y activadores ACTUALIZAR.

2. Estructura C/S de tres niveles

Debido a los defectos inherentes del sistema cliente/servidor de dos niveles, no se puede aplicar a algunos sistemas complejos y de gran escala, por lo que ha surgido la estructura de tres niveles. El sistema cliente/servidor separa las aplicaciones de la parte del servidor y la parte del cliente en una estructura de dos niveles, es decir, adopta la estructura "cliente-servidor de aplicaciones-servidor de base de datos" (como se muestra en la Figura 1-8). Una aplicación de base de datos típica se puede dividir en tres partes: parte de presentación, parte de lógica de aplicación (lógica de negocios) y parte de acceso a datos. La estructura de tres niveles corresponde a estas tres partes.

Figura 1-8 Estructura C/S de tres niveles

Entre ellos, el servidor de aplicaciones y el servidor de bases de datos pueden estar ubicados en el mismo host o en diferentes hosts. El cliente es la parte de la interfaz de usuario de la aplicación y es responsable de la interacción entre el usuario y la aplicación. El software que se ejecuta en el cliente también se denomina software de capa de presentación. El servidor de aplicaciones almacena el software de la capa de lógica empresarial (también llamada capa funcional), que es el núcleo del procesamiento de la lógica de la aplicación e implementa negocios específicos. Puede responder a las solicitudes de los clientes y completar procesamientos comerciales o cálculos complejos. Si hay una tarea de acceso a la base de datos, la capa del servidor de aplicaciones puede enviar instrucciones SQL al servidor de la base de datos de acuerdo con los requisitos del cliente. Cuando la lógica de la aplicación se vuelve compleja o se agregan nuevas aplicaciones, se pueden agregar nuevos servidores de aplicaciones. El servidor de base de datos se utiliza para ejecutar instrucciones SQL enviadas desde la capa funcional para completar las restricciones de integridad, acceso y almacenamiento de datos. Una vez completada la operación, los resultados de la operación se devuelven al cliente a través del servidor de aplicaciones.

1.3.2 Estructura navegador/servidor

Con la aplicación generalizada de la tecnología de Internet y la tecnología Web, la estructura C/S ya no puede satisfacer las necesidades de las personas. Porque en un sistema C/S típico, ya no es práctico instalar aplicaciones front-end para los clientes, y tampoco es práctico limitar el entorno de trabajo del cliente solo a sistemas operativos como Windows, Macintosh o UNIX. Así surgió el sistema basado en la estructura navegador/servidor (Navegador/Servidor).

Después de adoptar la estructura B/S, el cliente solo necesita instalar un navegador universal y ya no está restringido por sistemas operativos y hardware específicos, realizando aplicaciones multiplataforma.

Las aplicaciones típicas basadas en la estructura B/S suelen adoptar una estructura de tres capas: "navegador-servidor web-servidor de base de datos". El principio de funcionamiento del modo B/S es: a través del navegador. forma de hipertexto El servidor web realiza una solicitud para acceder a la base de datos. Después de que el servidor web acepta la solicitud del cliente, activa el programa CGI correspondiente para convertir el lenguaje HTML de hipertexto a la sintaxis SQL y entrega la solicitud a la base de datos. El servidor recibe la solicitud, procesa los datos y luego los procesa. El conjunto de resultados se devuelve al programa CGI. Luego, CGI convierte el resultado en HTML y lo reenvía al navegador del solicitante a través del servidor web, como se muestra en la Figura 1-9.

Figura 1-9 Principio de funcionamiento de B/S

En el modo B/S, la configuración estándar del cliente es un navegador, como IE, el procesamiento de funciones comerciales es manejado por un navegador; Servidor de aplicaciones independiente, los servidores web se han convertido en la configuración estándar para el procesamiento de aplicaciones; el procesamiento de datos todavía es manejado por servidores de bases de datos.

Esencialmente hablando, la estructura B/S y la estructura C/S tradicional utilizan el mismo método de solicitud y respuesta para ejecutar aplicaciones. La principal diferencia es que C/S es de dos capas o de tres. Modelo de estructura de niveles, el cliente concentra una gran cantidad de software de aplicación, mientras que B/S es una estructura C/S de tres niveles o multinivel basada en hipervínculos (HyperLink), HTML y Java. El software del navegador es una arquitectura completamente nueva que resuelve problemas multiplataforma. Hasta ahora, estas dos estructuras se han utilizado ampliamente en diferentes aspectos. Aunque la estructura C/S obviamente no es tan ventajosa como la estructura B/S en el entorno de Internet, todavía tiene ventajas en el entorno LAN.

1.3.3 Arquitectura multicapa del sistema de información de Internet/Intranet

En comparación con el software de aplicación de estructura de dos niveles tradicional, el software de aplicación de estructura multicapa tiene buena escalabilidad y muchas ventajas. Como una gestión sólida, alta seguridad y buena reutilización del software, cómo construir una arquitectura de software de aplicaciones en el entorno de Internet/Intranet se ha convertido en un tema muy importante y un nuevo punto candente en la investigación actual de sistemas de software.

En la actualidad, están surgiendo varias tecnologías sin cesar, como la página HTML estática original, el programa de puerta de enlace CGI simple, el programa Java Applet, ASP actual y otras tecnologías de bases de datos web, así como juegos dinámicos en línea Java y Tecnología PHP.

De hecho, el concepto de multicapa fue propuesto por Sun. El sistema de aplicaciones multicapa propuesto por Sun Company incluye cuatro capas: capa de cliente, capa de servicio web superior, capa de servicio de aplicación y capa de base de datos. La capa superior de servicios web es una capa muy importante en la arquitectura multicapa de Sun. Funciona principalmente como proxy y caché. La función del servidor web superior es almacenar en caché los programas Java Applet y los datos estáticos que los clientes locales utilizan con frecuencia. Generalmente se coloca en la red de área local donde se encuentra el cliente y actúa como un host Java Applet (una computadora que transmite). Programas Java Applet para el navegador web) y función de proxy para acceder a otros servicios. Tiene la misma función que un servidor proxy normal. Al crear software de aplicaciones multicapa, elegir la plataforma Java es una buena opción porque abarca varias plataformas de aplicaciones. En resumen, construir un sistema de software de aplicación multicapa en la plataforma Java representa la tendencia de las aplicaciones de Internet/Intranet en el futuro.