Asier Marqués

Hablando sobre tecnologías web y otras cosas que me interesan

Archivo de la categoría 'Microsoft'...

Archivado bajo Microsoft, Sistemas, Virtualización

Estas son las mejoras que más me han gustado en la nueva versión R2 para Microsoft Windows Server 2008

Estará disponible sólo en 64Bits

HyperV 2 soporta 32 procesadores lógicos en la máquina anfitriona

Las máquinas virtuales corriendo en HyperV 2 se pueden migrar en caliente sin pérdida de servicio

Se pueden agregar discos a las máquinas virtuales corriendo en HyperV 2 sin necesidad de reinicio

Soporte de SLAT (second level address translation), se pueden aprovechar nuevas características de procesador que proporcionan un mayor rendimiento y reducen la carga de Hypervisor.

Se puede atacar a IIS7 desde PowerShell 2.0 (gracias!)

ASP.NET se puede ejecutar ahora en modo Server Core (gracias!)

Powershell se puede ejecutar ahora en modo Server Core (gracias!)

Los scripts de Powershell 2.0 pueden ser internacionalizados

Mejoras en la seguridad de DNS para prevenir ataques DDOS y respuestas no legítimas

Se ha conseguido reducir considerablemente el consumo de energía

    Comentarios (0) Posted by Asier Marqués on Sábado, Enero 10th, 2009

    Archivado bajo .net, Desarrollo Web, Microsoft, Servidores Web, Sistemas

    En entornos Microsoft, para disponer de URL Rewrite como en Apache con Mod Rewrite, debíamos instalar un componente isapi en el servidor. La opción más conocida es Isapi Rewrite de Helicon.

    En IIS7 disponemos de un módulo oficial creado por el equipo de IIS7, que ha sido publicado hace unos días en su versión Go Live Release, apta para entornos de producción.

    url rewrite para dummies

    Podemos crear reglas desde el administrador de IIS7, a mano o mediante una interfaz “para torpes”, o desde el archivo webconfig.xml de cada sitio web.

    Entre las funcionalidades más interesantes que puede ofrecernos este módulo se encuentran la posibilidad de cachear las reglas por el servidor web, disponer de una herramienta gráfica para importar reglas de mod_rewrite de apache y la  integración con las trazas de iis para detectar errores en las reglasque creemos.

    La gestión de las reglas en el webconfig es tremendamente sencilla:

    <rewrite>
      <rules>
        <rule name="Fail bad requests">
          <match url=".*"/>
          <conditions>
            <add input="{HTTP_HOST}" pattern="localhost" negate="true" />
          </conditions>
          <action type="AbortRequest" />
        </rule>
        <rule name="Rewrite to article.aspx">
          <match url="^blog/([0-9]+)/([_0-9a-z-]+)" />
          <action type="Rewrite" url="article.aspx?id={R:1}&title={R:2}" />
        </rule>
      </rules>
    </rewrite>
    Comentarios (1) Posted by Asier Marqués on Miércoles, Octubre 1st, 2008

    Archivado bajo Desarrollo Web, Microsoft, Servidores Web, Sistemas

    Battle Stations es un juego para facebook tipo MMORTS (juego de estrategia online multijugador masivo en tiempo real), que recibe una media de 13000 jugadores diarios y que ha dado la fama gracias a su éxito a Tyler Projects.

    screen-capture-18

    El responsable de Tyler Projects, Tian Yang, tenía curiosidad por saber si una solución basada en Windows 2008 Server podría mejorar su infraestructura basada en CentOS5 y Fedora9.

    Montar la aplicación en 2008 Server les llevó 30 minutos y los resultados obtenidos (versión Excel 2003) en cuanto a rendimiento son sorprendentes.

    battlestations

    Hicieron dos tipos de pruebas:

    - En la primera prueba los tres sistemas operativos (WS2008, Centos5, Fedora9) se probaron “out of the box” es decir, sin ningún tipo de modificación
    - En la segunda Windows 2008 se mantuvo con la configuración por defecto, y en Centos5 and Fedora9 fueron optimizados por Tian Yang.

    Vemos como Windows 2008 Server consigue casi el doble de rendimiento que CentOS y Fedora.

    Esta claro que las mejoras efectuadas en la pila TCP/IP, la nueva arquitectura de IIS7, el componente FastCGI oficial para php de Microsoft y la opción Server Core, hacen posible ver a Windows 2008 Server como una plataforma más que considerable para servir aplicaciones web para internet.

    Más información, en el blog de Dennis Chung.

    Comentarios (4) Posted by Asier Marqués on Viernes, Septiembre 19th, 2008

    Archivado bajo Desarrollo, Microsoft, Sistemas, Trucos, UNIX / Linux

    Windows Vista SP1, al igual que Windows 2003 R2 y Windows 2008 Server, dispone de una característica poco conocida pero que es muy conveniente conocer, sobre todo para desarrolladores y administradores de UNIX.

    Se trata de SUA (Subsystem for UNIX Applications), un subsistema basado en Interix que permite correr nativamente aplicaciones para UNIX/Linux en los sistemas operativos windows que lo implementen.

    Para activarlo, basta con ir a agregar programas y características, del panel de control y activarlo allí.

    activar sua

    Comentarios (2) Posted by Asier Marqués on Sábado, Septiembre 6th, 2008

    Archivado bajo Eventos, Microsoft, Sistemas

    Tras dormir 2 horas después de una cena en Cheese Me y pasarlo como un enano en Pacha BCN, fuimos Sergio, Jonathan y yo al debate sobre sistemas operativos de Lancelona en el que un servidor charlaba sobre Microsoft Windows.

    Aunque no pude exponerla, debido a que no teníamos proyector, llevaba preparada una presentación que podéis ver aquí o al final de estos párrafos. Esta semana escribiré un post más detallado con lo que iba a decir en esa presentación.

    La verdad es que el debate me gustó y estuve agusto pero eché en falta un moderador que evitáse que entrásemos en temas de marketing, patentes, gadgets y licencias en los que se entró y creo que a la gente que fue a vernos no le interesaba en absoluto. También se echaron en falta varios micrófonos para darle más dinamismo a la cosa.

    Sobre el tema de licencias, y tal como prometí en el debate, tengo pendiente escribir un post dedicado a la licencia de windows que hay que aceptar cuando instalas el mismo.

    Yo me esperaba un debate más entrado en funcionalidad técnica de cada sistema operativos y de las posibilidades que ofrece cada uno. Creo que hubiese sido más didáctico que entrar en temas “éticos” y de marqueting. De esa forma cada uno hubiese presentado key features de cada sistema y los demás podrían haber mencionado como esas funcionalidades se pueden conseguir, o conseguir una solución aproximada, en otros sistemas y plataformas.

    Aun así mereció de sobra la pena ir hasta Barcelona y conocer a personas (en persona) como Raul Illana, David Solanes, Joan Martínez Serres, Miguel López entre otros.

    Os dejo con la presentación que tenía preparada y no pude exponer (prometo escribir esta semana sobre esa presentación).

    Sistemas Microsoft Windows

    View SlideShare presentation or Upload your own. (tags: microsoft sistemas)
    Comentarios (12) Posted by Asier Marqués on Lunes, Septiembre 1st, 2008

    Archivado bajo Desarrollo Web, Microsoft, PHP, Sistemas

    La próxima versión de php incluirá una serie de cambios generales, como la introducción de namespaces por ejemplo, que afectarán a todos las versiones de los diferentes sistemas operativos.

    Pero en la versión para Microsoft Windows se incluyen una serie de cambios que debemos conocer los que desarrollamos bajo esta plataforma.

    - Sólo serán soportados Windows 2000, XP, Server 2003, Vista y Server 2008. Se elimina el soporte para Windows 98, ME, and NT.

    - Las nuevas versiones de php a partir de esta versión usarán el compilador VC9 (Microsoft Visual C++ 2008) por lo que requiere la librería msvcr90.dll. Si usas el instalador oficial, este incluirá dicha librería automáticamente.

    Por razones de compatibilidad con algunas extensiones y con el servidor web Apache, durante las versiones php5.3.x se tendrá que utilizar la versión compatible con VC6, el cual data de 1998. En las siguientes versiones de php éste solo podrá ser compilado con VC9.

    - Se incluirán versiones de 64 bits pero tendrán un soporte experimental por el momento.

    - Las extensiones PECL no serán incluidas en php hasta que el nuevo sistema de compilado de PECL funcione correctamente.

    - Los binarios se publicarán al mismo tiempo que el código fuente.

    Comentarios (0) Posted by Asier Marqués on Jueves, Agosto 28th, 2008

    Archivado bajo Innovación, Microsoft, Sistemas

    El otro día leí en el blog de Eduardo Collado un planteamiento que hizo sobre si era mejor opción usar Windows o usar Linux en un dispositivo UltraMobile PC.

    Estoy de acuerdo en algunas cosas que plantea y en desacuerdo en algunas otras.

    De acuerdo estoy en que en un dispositivo UMPC de bajo coste es una opción muy acertada el uso de Linux, ya que en ese tipo de dispositivos, debido precisamente a su bajo coste, si queremos disponer de Windows Vista no tenemos hardware suficiente como para disfrutar de una experiencia de usuario óptima en el caso de conseguir instalar dicho sistema. Una pena que Microsoft no disponga de una sistema reducido a considerar para hardware menos potente o desfasado.

    Sin embargo, no todos los sistemas UMPC son de bajo coste y no todo su uso tiene por qué ser esporádico. Yo soy de la opinión de que no todo es blanco ni negro y cada sistema operativo tiene su lugar.

    En el caso de tener una buena máquina, no quiero decir que una opción de bajo coste sea una mala opción sino que es posible que no sea adecuado para ciertos usos, es interesante tener en cuenta Windows Vista como una opción por dos motivos: La seguridad y Origami Experience.

    La seguridad de windows vista es un punto muy a considerar con respecto a su anterior versión XP y Origami es sencillamente una maravilla.

    Como sobéis Microsoft tiende cada vez más al desarrollo de tecnologías y aplicaciones para su uso desde tecnologías táctiles. No es un secreto que Windows Mobile es una opción desfasada en este sentido y, frente a la aparición de tecnologías como WPF y Silverlight junto a la “competencia” con dispositivos como iPhone, es imperativo ver un cambio en la interacción con las aplicaciones de este sistema.

    No he tenido la oportunidad de probar en mis propias manos Origami Experience, pero os dejo este video en el que os podéis hacer una idea de lo que hace… simplemente genial.

    Comentarios (9) Posted by Asier Marqués on Martes, Agosto 19th, 2008

    Archivado bajo Eventos, Microsoft, Sistemas

    Raul Illana en nombre de encuentros sociales, como colaborador de la organización de Lancelona, me ha ofrecido la oportunidad de ser ponente en dicho evento.

    Será un conjunto de ponencias abiertas en las que, junto a otros profesionales que trabajan con sistemas operativos de otras plataformas, expondremos las posibilidades que ofrecen los mismos y por qué pueden ser buenos candidatos a su uso.

    Me tocará defender a los sistemas operativos Microsoft de los mitos habituales que podemos encontrarnos, hablaré sobre tecnologías, tanto de escritorio como de servidor, que creo que hacen que el hecho de elegir sistemas Microsoft merezca la pena y hablaré desde un punto de vista realista de por qué, al usuario normal y a las empresas, les interesarían usar Microsoft Windows como sistema operativo doméstico y profesional respectívamente.

    Los que me conocen saben de sobra que no soy talibán de ninguna tecnología (lo considero absurdo) y trabajo habitualmente con sistemas Microsoft, Linux y MacOSX.

    Espero veros por la Lancelona el 29,30 y 31 de este mes!

    Comentarios (18) Posted by Asier Marqués on Viernes, Agosto 8th, 2008

    Archivado bajo Bases de Datos, Desarrollo Web, Frameworks, Microsoft, PHP, Sistemas, Trucos

    En la actual versión de symfony se usa Propel junto a Creole para crear un orm y una capa de abstracción entre la base de datos y el resto de nuestra aplicación.

    Esto nos permite desarrollar aplicaciones independientes del motor de base de datos que usemos.

    Php utiliza oficialmente la librería mssql para conectarse a una base de datos Sql Server y aunque existe una opción mejor por parte de Microsoft en fase CTP, Propel (y por lo tanto Symfony) la utilizan para conectarse a este tipo de motor.

    Sin embargo, para conseguir conectarse y operar con éxito con Sql Server 2005 hay que hacer una serie de configuraciones en php/symfony y hacks en creole.
    (Espero que no os siente esto como un cubata de Baileys con tonica : )

    Vamos a verlo paso por paso:

    1- Actualizar la librería ntwdblib.dll a la versión 2000.80.194.0.

    2- Activar las extensiones php_mssql y php_xsl en el php.ini.

    Adicionalmente debemos indicar los siguientes parámetros para php_mssql:

    mssql.datetimeconvert = 0
    mssql.textlimit = 2147483647
    mssql.textsize = 2147483647

    3- Crear nuestra base de datos en Sql Server y asignar el login y permisos adecuados al usuario que usemos para conectarnos.

    4- Editar el archivo schema.yml con nuestro esquema de base de datos.

    5- Configurar la conexión a la base de datos:

    [ruta_completa]\symfony.bat configure:database
    “mssql://usuario:password@equipo\instancia/nombre_baseDatos”

    6- Construir el modelo orm de symfony:

    [ruta_completa]\symfony.bat propel:build_model

    7- Editar el fichero MSSQLConnection.php ubicado en \lib\plugins\sfPropelPlugin\lib\vendor\creole\drivers\mssql dentro del directorio de symfony.

    En el caso de que no se especifique un puerto en el string de conexión a la base de datos, creole te inserta el valor de puerto predeterminado para sql server. Sin embargo, en Sql Server 2005 esto provoca un fallo impidiendo realizar una conexión exitosa a la base de datos.

    Para evitar que creole nos meta el puerto si o si, debemos modificar la siguiente secuencia de control en MSSQLConnection.php:

    if(!empty($dsninfo['port'])) {
    $dbhost .= $portDelimiter.$dsninfo['port'];

    }

    //*else {
    //$dbhost .= $portDelimiter.’1433′;
    // }

    Con estas modificaciones ya deberíamos poder trabajar con sql server 2005 desde symfony.

    Comentarios (6) Posted by Asier Marqués on Miércoles, Julio 16th, 2008

    Archivado bajo Desarrollo Web, Frameworks, Microsoft, PHP, Servidores Web, Sistemas

    Desde hace algún tiempo he estado leyendo sobre varios frameworks de desarrollo con php, que me permitiesen de una forma fiable automatizar trabajo que, a pesar de no tener una dificultad notable para alguien que sepa programar, te hace perder un montón de tiempo si quieres hacer las cosas bien.

    La opción que más me ha gustado para php es sin duda Symfony y puesto que desarrollo tanto para plataformas UNIX/Linux como para sistemas Microsoft, me interesé por hacerlo funcionar e incluso utilizarla en proyectos que actualmente me encuentro desarrollando bajo sistemas Microsoft.

    Voy a detallar como es una instalación de Symfony en IIS. Yo lo tengo funcionando sobre 2003 Server SP2 con IIS6

    1 – Se descarga el código fuente de Symfony y se descomprime en un directorio en una de las unidades de disco duro del servidor. (Supongamos D:\symfony)

    2 – Se crea un directorio cuyo contenido será el que usemos como sitio web. (Supongamos D:\dir_proyecto)

    3 – Abrimos un terminal, nos situamos en “dir_proyecto” y ejecutamos lo siguiente para crear un proyecto:

    D:\symfony\data\bin\symfony.bat init-project nuevo_proyecto

    Ahora creamos una primera aplicación para ese proyecto:

    D:\symfony\data\bin\symfony.bat init-app nueva_aplicacion

    4 – Creamos un sitio web nuevo que apunte al directorio “D:\dir_proyecto\web”.

    5 – Dentro del ese nuevo sitio web, creamos un directorio virtual que apunte a “D:\symfony\data\web\sf”

    6 -  Si usamos isapi rewrite necesitamos ahora aplicar las reglas de redirecciones para nuestro sitio web. En la documentación oficial nos comentan una serie de reglas específicas para entornos de IIS. Esas reglas pueden darnos problemas a la hora de acceder a los archivos del directorio “D:\symfony\data\web\sf”.

    Para evitar estos problemas, debemos ser fieles a las reglas definidas en el .htaccess que se ha creado en el directorio “D:\dir_proyecto\web” y añadir las reglas de seguridad relativas a entornos Microsoft.

    Las reglas de redireccionamiento quedarían de la siguiente forma:
    RewriteRule .*(?:global.asa|default\.ida|root\.exe|\.\.).* . [F,I,O]

    RewriteRule ^$ index.html [QSA]
    RewriteRule ^([^.]+)$ $1.html [QSA]
    RewriteCond %{REQUEST_FILENAME} !-f

    RewriteRule (.*) /index.php [L]

    Con esto ya deberíamos comprobar que todo funciona correctamente.

    Comentarios (9) Posted by Asier Marqués on Martes, Julio 15th, 2008