Está en la página 1de 12

CHAT SERVER EN GO

INFORME PROYECTO (Chat Server) EN GO

ELECTIVA II

INTRODUCCION

Un servidor de chat es una computadora dedicada a proporcionar el poder de


procesamiento para manejar y mantener el chat y sus usuarios. Por ejemplo, hay miles
de servidores dedicados configurados cada uno de estos servidores se considera un
servidor de chat.

Se realiza una prueba de un chat server con el lenguaje de programación de google GO


para mostrar paso por paso el chat en GO.

Ángela Patricia Cepeda


Código: 201120520 26 de nov. de 17
CHAT SERVER EN GO

Para empezar necesitamos tener instalado GO para poder iniciar con nuestro chat
server.

Para poder empezar a codificar necesitamos un editor de texto en este caso Sublime
Text

Ángela Patricia Cepeda


Código: 201120520 26 de nov. de 17
CHAT SERVER EN GO

Creamos dos archivos uno de cliente que es al que le vamos a enviar y


recibir mensajes

Y un servidor que es el que nos conectara al otro cliente para poder enviar y recibir el
mensaje.

Empezamos a codificar el servidor, importamos las librerías que necesitamos para


realizar la conexión.

Ángela Patricia Cepeda


Código: 201120520 26 de nov. de 17
CHAT SERVER EN GO

Creamos unas constantes addr para reconocer la dirección del servidor ,


vamos a colocar el tamaño del buffer y el carácter de salto de línea.

Vamos a crear una variable cliente de net.conn en donde el método main recibirá un
cliente a la lista. El método for recibe ese cliente lo acepta y realiza la conexión.

Ángela Patricia Cepeda


Código: 201120520 26 de nov. de 17
CHAT SERVER EN GO

En el método de conexión el cual se maneja por bytes y al realizar la


conexión dará un salto de línea para comenzar la conversación.

el ultimo método de función ingresar cliente con otros clientes.

Importamos las librerías para hacer conexión con nuestro servidor, ingresamos unas
constantes como la dirección del servidor para hacer conexión, el tamaño del buffer y

Ángela Patricia Cepeda


Código: 201120520 26 de nov. de 17
CHAT SERVER EN GO

el salto de caracteres. Ingresamos unas variables como la de Nick para


saber el nombre del otro cliente con el que se enviara información.

En el método de función main donde podemos recibir el nombre o Nick para poder
establecer conexión y guardar la variable de tipo String que nos dará el cliente.

Ángela Patricia Cepeda


Código: 201120520 26 de nov. de 17
CHAT SERVER EN GO

Realizamos un bucle for el cual lo que hace es que el cliente siga


buscando al servidor hasta que mantengan conexión y cuando eso suceda se cierra
la búsqueda y se envía el mensaje.

Al realizar la conexión llamamos a un bucle for para que nos ingrese los mensajes que
sean ose un bucle infinito de mensajes.

Ángela Patricia Cepeda


Código: 201120520 26 de nov. de 17
CHAT SERVER EN GO

El método de función final recibirá el mensaje del bucle for que


realizamos y mostraremos con un comando de salida Println.

después de terminar nuestro dos archivos cliente y servidor procedemos a ejecutarlos


y probarlos.

Para poder correr nuestro cliente y servidor ingresamos a símbolo del sistema del
computador donde le diremos la dirección donde quedaron guardados nuestros dos
archivos y con los comando de go activamos primero el servidor ya que es el que nos
Ángela Patricia Cepeda
Código: 201120520 26 de nov. de 17
CHAT SERVER EN GO

dará la conexión con el otro cliente. En este caso para correr el archivo
escribimos: go run servidorAngelaCepeda.go y damos enter , nos saldrá una línea
de espera para poder conectar con el cliente.

Ejecutamos del mismo modo los clientes y al tener conexión con el servidor podemos observar
que ya nos esta pidiendo el nombre de usuario o como lo llamamos en nuestra variable NICK.

Aquí podemos observar que al ingresar el nombre estan haciendo conexión entre ellos para
empezar la conversacion y envio de muchos mensajes.

Ángela Patricia Cepeda


Código: 201120520 26 de nov. de 17
CHAT SERVER EN GO

Aquí finalmente comprobamos que la conexión si se realizo y se comienza el envio infinito de


mensajes entre el cliente que se hace llamar Angela cepeda y el otro cliente que se hace llamar
jhon cepeda.

Ángela Patricia Cepeda


Código: 201120520 26 de nov. de 17
CHAT SERVER EN GO

CONCLUSIONES

 Go usa una sintaxis parecida a C por lo que los programadores que hayan usado
dicho lenguaje se sienten muy cómodos con él.
 Aun siendo un lenguaje diseñado para la programación de sistemas, provee de
un recolector de basura, reflexión y otras capacidades de alto nivel que lo convierten
en un lenguaje muy potente.
 Go es un lenguaje de programación compilado, concurrente, imperativo,
estructurado, orientado a objetos

Ángela Patricia Cepeda


Código: 201120520 26 de nov. de 17
CHAT SERVER EN GO

REFERENCIAS

 https://scotch.io/bar-talk/build-a-realtime-chat-server-with-go-and-
websockets
 https://golang.org/dl/
 https://medium.com/@golang_es/instalaci%C3%B3n-de-go-golang-
6fd5d7b9eb48

Ángela Patricia Cepeda


Código: 201120520 26 de nov. de 17

También podría gustarte