jueves, 24 de mayo de 2012

Tutorial Pool de Conexiones Con Oracle En Linux !


Tutorial para la creación de un pool de conexiones con oracle en Linux.


Autor: Cristian Lara
Trabajo: Bonus Point nº8.
Curso: Introducción al desarrollo de aplicaciones empresariales.
Profesor: Cristian Ortiz.




Para descargar el ojdbc6.jar lo podemos bajar del siguiente link:


Como tenemos exportado el ojdbc6.jar ( Debemos tenerlo par
a correr nuestro servidor de aplicaciones glassfish )
Nos vamos a la siguiente direccion por la terminal:
- /usr/local/glassfish-3.1.2/glassfish/domains/domain1/lib/ext
Ahora copiamos el ojdbc6
en la direccion, pero primero le damos los permisos, esto lo podemos hacer de la siguiente manera:

- chmod 777 /home/<usuario>/desktop/ojdbc6.jar
- cp /home/<usuario>/desktop/ojdb6.jar

Y ahora aplicamos el siguiente comando:

- locate "lib/ext"

Ahora podemos comenzar con la instalacion de nuestro pool de conexiones.


Paso1: Para comenzar debemos tener corriendo nuestro servidor de aplicaciones

Paso2: Ahora abrimos alguno de nuestros navegadores (Firefox,Chrome,Opera,etc), aunque de preferencia se recomienda ocupar Mozilla Firefox por su compatibilidad con diferentes aplicaciones web. Luego de esto nos vamos a el puerto donde tenemos configurado nuestro Servidor de Aplicaciones. Para este caso, nosotros ocupamos el puero "8080", entonces nos dirigimos a la siguiente ruta: "http://localhost:8080". En otros casos tambien puede ser la IP local de su ordenador que suele ser "http://127.0.0.1:8080". Recordemos que para NUESTRO caso ocupamos el puerto 8080 ya que nuestro servidor de aplicaciones esta configurado en ese puerto. 

 
















Paso3: Ahora nos dirigimos a donde dice "go to the Administration Console", que en español se leeria "ir a la administracion de la consola". Estando dentro nos dirijimos a "Recursos", luego a "JDBC" para luego ir a "Pool de conexiones". Desde Ahora en adelante comenzaremos a crear nuestro Pool de conexiones en Oracle.




Paso4: Ya estando en Pool de Conexiones, veremos algunos ya creados por default, pero nosotros queremos crear nuestro propio pool, con nuestros parametros y nuestras caracteristicas por lo tanto nos vamos a nuevo o new.


















Paso5: Ahora como nos damos cuenta, comienza la creacion del nuevo pool de conexiones. Para empezar, Colocamos el nombre que le queremos dar a nuestro pool de conexiones. Para nuestro caso le pondremos "EjemploPool", y luego en la parte posterior(Tipo de recurso) seleccionamos la opcion de "javax.sql.ConnectionPoolDataSource" y abajo en "Proveedor de base de datos", la base de datos que vamos a utilizar, para esta ocacion seria "Oracle"(Recordemos que las casillas que no nombramos deben quedar default) y luego presionamos siguiente.

















Paso6: Al apretar siguiente nos saldra varios campos. Primero, La configuracion general, la cual ya realizamos al principio, por ende no debemos cambiar nada. Mas abajo, nos encontramos con la configuracion de pool y es aquí donde debemos comenzar a editar la configuracion.

- En tamaño Inicial y minimo designamos la cantidad minimi e inicial de conexiones. Este valor puede ser decidido por ustedes pero lo recomendado son 2.

- Luego tamaño del pool maximo. Esto corresponde al valor maximo de conexiones que puede sostener nuestro pool, como la configuracion que estamo haciendo es basica, recomendamos 8.

- Ahora nos encontramos con la cantidad de cambio de tamaño de pool. Esto corresponde a cuantas conexiones se van a eliminar cuando el timeout de inactividad del pool caduque. Recomendado 2

- Timeout de inactividad. Tiempo que una conexion puede mantener sin actividad en el pool. recomendado 300

- Tiempo maximo de espera. Tiempo maximo que se espera para la conexion, antes que se envie un mensaje de timeout. Recomendado 10000.

Terminando con esta parte nos metemos a la "Transaccion". Aqui comenzaremos a editar sobre las "Propiedades adicionales".
Debemos tener lo siguiente:

Nombre                                    Valor
ExplicitCachingEnable             false
MaxStatements                           0
ImplicitCachingEnable             false
LoginTimeOut                           0
URL                               jdbc.oracle:thin:@localhost:1521:XE

(Donde localhost es la ip del ordenador a  conectar. 1521 donde  configuramos nuestra base de datos y XE el nombre de la base de datos)

PortNumber                             1521  (Puerto de oracle)
DataBaseName                   XE   (Nombre de la base de datos)
DataSourceName                     OracleConnectionPoolDataSource 
NetworkProtocol                        tcp
ServerName                             Oracle
User                                         ejemplo   (Nombre del usuario de la base de datos)
Password                                ejemplo123 (Password de la base de datos) 










...y presionamos Finalizar (Recordemos que si las propiedades no se encuentran, presionamos agregar propiedad y listo).

















Codigo Java para conectarse al Pool:


1 <%@page import="java.sql.Connection"%>
 2 <%@page import="java.sql.ResultSet"%>
 3 <%@page import="java.sql.PreparedStatement"%>
 4 <%@page import="javax.naming.NamingException"%>
 5 <%@page import="java.sql.SQLException"%>
 6 <%@page import="javax.sql.DataSource"%>
 7 <%@page import="javax.naming.InitialContext"%>
 8 <%@page import="javax.naming.Context"%>
 9 <%@page contentType="text/html" pageEncoding="UTF-8"%>
10 <!DOCTYPE html>
11 <html>
12     <head>
13         <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
14         <title>No molestar, estoy el pool !!!</title>
15     </head>
16     <body>
17         <h1>Estoy en Pool!</h1>
18         <%
19             Connection connection = null;   // objeto conexion
20
21             try {
22                 System.out.println("\n\n\n\n ------------");
23                 Context ctx = new InitialContext();     // interfaz representa un contexto de nomenclatura,
24                 DataSource ds = (DataSource) ctx.lookup("jdbc/ejemplo");   // definimos el pool de conexiones a utilizar
25
26                 System.out.println("------------ \n\n\n\n ");
27                 connection = ds.getConnection();    // obtenemos la conexion a traves de un pool de conexiones
28
29                 if (connection == null) {
30                     out.print("<p>Conexion es null</p>");                  
31                 }
32
33                 // A continuacion se muestra una consulta normal a la base de datos
34                 String query = "SELECT * FROM palabra";
35                 PreparedStatement statement = connection.prepareStatement(query);
36                 ResultSet rs = statement.executeQuery();
37                 while (rs.next()) {
38                     out.print(rs.getString(2) + "<br>");    // visualizar la columna 2 del ResultSet.
39                 }              
40             } catch (NamingException ex) {
41                 System.out.println("Error NamingException: " + ex.getMessage());
42             } catch (SQLException ex) {
43                 System.out.println("Error SQLException: " + ex.getMessage());
44             }
45         %>
46
47
48     </body>
49 </html>
50



martes, 10 de abril de 2012

Creación de antena


 Trabajo practico de construcción de antenas WIFI para el establecimiento de enlaces inalámbricos.


Integrantes:     Cristian Lara
                        Patricio Riquelme
                        Rodrigo Soto
                        Francisco Vera


                Comenzamos la semana con una actividad motivante y entretenida, como lo es la construcción de una antena. ¿Qué se quiere lograr con la actividad antes mencionada?, lo  que se quiere lograr es el conocimiento óptimo de la onda y todas sus características, como lo son la longitud de onda, para qué sirve la frecuencia, a que se refiere con la ganancia de la antena, etc. A continuación, se presenta un paso a paso de la actividad con algunas imágenes y descripciones que van a aclarar un poco la finalidad de esto.
            Para partir se hace una lista con los materiales que vamos a ocupar para la construcción de nuestra antena. La que pretendemos construir lleva el nombre de Yagi-uda  y los materiales a utilizar son los siguientes:

Materiales para la antena.

  1. Calibre tipo Vernier
  2. 50cm de alambre de cobre de 2 a 2,5mm de espesor hueco o macizo
  3. Perforadora o taladro (manual o de mesa) y mecha del diámetro del alambre de cobre
  4. 30cm de caño plástico para instalaciones eléctricas o de PVC de 15 o 16mm de diámetro externo
  5. Un conector tipo N-chasis
  6. Soldadora y estaño
  7. Pistola plástica (para pegar) o similar
  8. 30cm de caño cuadrado de metal o aluminio hueco, con 15 o 16mm de “luz” interna
  9. Una lima de metal o para uñas
  10. 30cm de caño de PVC de cañerías o desagües
  11. Una tapa de compact disk plástica o algo similar de plástico que se pueda recortar
  12. Una cerveza bien helada
  13. Paciencia y leer todo hasta el final

Materiales para el cable.

- Cable coaxial
- Conector de tipo N hembra
- Conector SMA 
- Estaño
- Cautil
- Crema para Soldar


Creacion de la antena.

Comenzamos perforando el tubo de manera horizontal, teniendo en cuenta que un agujero del otro tiene que tener una distancia especificada . (ver referencias)


Ahora cortamos el alambre de cobre en dimensiones especificadas en  y las  ubicamos en los agujeros del tubo de pvc. Ahora podemos fijarlos en su respectiva posición con un poco de silicona caliente o con algún medio adhesivo que adhiera el metal al tubo de forma que no se salga ni se corra de su posición.



Luego de esto, creamos un cuadrado con alambre de cobre y envolvemos el tubo en el punto 0 con este. Tomamos el cuadrado creado recientemente y lo soldamos al cable (Exactamente en el conector N).























Ya tenemos la antena construida y lista para su uso, pero, ¿qué acciones se efectúan detrás de esta antena? , ¿Cómo funciona y como es su proceso de captar las señales y enviar señales?
            La antena que nosotros construimos es una antena unidireccional, ¿que significa esto?, que es una antena capaz  de concentrar la mayor parte de la energía radiada de manera localizada, aumentando así la potencia emitida hacia el receptor o desde la fuente deseada y evitando interferencias introducidas por fuentes no deseadas. Ahora, las características principales de nuestra antena es que es de 2.4 GHz 




Construcción del cable.

Para comenzar la construccion de nuestro cable, primero tenemos que pelar las 2 puntas del cable para que que de este modo se nos falicite soldar. Ahora tomamos el conector N y lo soldamos a cualquiera de los dos costados de la siguiente manera: 





























Una vez construido el cable y antena verificamos que estos funcionen de una manera adecuada.






































Cálculos para nuestra antena.



Perdida de propagación

Pp=20*log10(0.1)+100
Pp=20-1+100
Pp=80

Ganancia de salida
Gse=15
Gse=10log30
Gse=15













Referencias:




http://www.axones.com.ar/axones/antenas/yagi-uda.html

viernes, 23 de marzo de 2012

Actividad y redes de cableado estructurado



Integrantes: Cristian Lara
                       Patricio Riquelme
                       Francisco Vera




 ¿ Que es el cableado estructurado?



  • Es una interconexion que existe en una planta entre equipos de diferentes o igual tecnología permitiendo la integracion de los diferentes servicios que  dependen del tendido de cables como datos, telefonía control, etc.
  •  En un sistema de cableado estructurado, cada estación de trabajo se conecta a un punto central, facilitando la interconexión y la administración del sistema, esta disposición permite la comunicación virtualmente con cualquier dispositivo, en cualquier lugar y en cualquier momento


¿ Porque un cable estructurado ?


  • Menores fallas en la red respecto a un sistema convencional, por lo tanto se tiene menos tiempos improductivos.
  • El costo inicial de un sistema de cableado estructurado puede resultar  alto, pero este hará ahorrar dinero durante la vida util del sistema.
  •  El 40% de empleados que trabajan  en un edificio se mudan cada año por lo que un sistema de cableado estructurado ofrece la simplicidad de la interconexión temporal para realizar estas tareas rápidamente, en vez de necesitar la instalación de cables adicionales


Estructura.
  • Cableado de Campus: Cableado de todos los distribuidores de edificios al distribuidir de campus.
  • Cableado Vertical: Cableado de los distribuidores del piso al distribuidor del esdifiio.
  • Cableado Horizontal: Cableado desde el distribuidor de piso a los puestos de usuario-
  • Cableado de Usuario: Cableado del puesto de usuario a otros equipos.


UTP.
Categorias de Cables Trenzados (UTP-STP).
 El cable trenzadp es uin medio de conexion usado en telecomunicaciones en el que dos conductores electricos aislados son entrelazados para anular las interferencias de funetes externas.

Por ejemplo:

UTP: Es un cable de pares trenzados sin blindar que se utilizan para diferentes tecnologias de redes y don de bajo costo.



  
Stp: Es un cable de cobre aislado dentro de una cubierta protectora, ademas la cantidad de aislamiento que posee ayuda a la inmunidad al ruido.


Armado de cables:

La actividad consistio en armar dos cables de red, 1 para la conexion a internet (UTP paralelo) y el otro para la conexion de un ordenador a otro (Cable UTP  cruzado).


¿Como lo lo logramos?


Para realizar la creacion de estos necesitabamos una herramienta escencial, la cual nos permitira la union de el conector con el cable de red, aemas de, como ta mencionamos antes, un conector  y cable de red.


Comenzaremos pelando el envoltorio que llevan los cables que nos permitan el traspaso de informacion entre ordenadores o internet, de manera que nos queden los cables al aire. Con unos dos centimetros de cables al aire es suficiente y deb erian quedar de la siguiente manera:



  Ya teniendo los cables pelados, los enderezamos y los alineamos de acuerdo al tipo de cable que queremos armas. En la siguiente imagen se muestran los dos tipos de cables y su orden frente a la variedad de colores que traen dentro:




  Ya Teniendo los cables pelados y alineados, cortamos la punta de manera que queden todos del  mismo largo y de esta manera al ponerlos dentro del conector, no quede alguno fuera de la conexion y nuevamente cercionamos el orden de los colores sea el aecuado. Luego de esta accion los cables deberian verse de esta manera:



Al tener alineados y en su orden corriespondiente orden, tomamos el conector de manera que las celdas de cobre miren hacia arriba e introducimos los cables de izquierda a derecha, de modo que el cable numero 1 quede a la izquierda. Tambien procuraremos dejar el envoltorio de los cables dentro del conector , de manera que al momento de grapar el conector, este quede sujeto al envoltorio. Esto le dara mas estabilidad y seguridad a los cables  frente a algun tipo de mala manipulacion o un tiron.




Ahora tenemos los cables dentro del conector, llevamos este a la pinza y apretamos fuertemente de modo que el cable quede firme y sin riesgo alguno.



 Con esto finalozamos la creacion de nuestro cable de red, el cual probremos la proxima clase.



Referencias: