Archivo

Archivo para la categoría ‘asp.net’

Arquitectura microservicios y .Net core

martes, 3 de enero de 2023 Sin comentarios
arquitectura microservicios
Arquitectura Microservicios

La arquitectura de microservicios es un enfoque para desarrollar aplicaciones software en el que se divide una aplicación en pequeños servicios autónomos que se comunican entre sí a través de una interfaz estándar, como HTTP.

Cada microservicio se encarga de una tarea específica y puede ser desarrollado, implementado y escalado de manera independiente. Esto permite un mayor grado de flexibilidad y facilita el mantenimiento y la actualización de la aplicación.

Una de las ventajas de la arquitectura de microservicios es que permite a los equipos de desarrollo trabajar de manera más ágil y eficiente, ya que cada microservicio puede ser desarrollado y probado de manera aislada antes de ser integrado en la aplicación completa.

Otra ventaja es que, al estar cada microservicio diseñado para realizar una tarea específica, es más fácil identificar y solucionar problemas en caso de que surjan. Además, si un microservicio falla, solo afectará a una parte de la aplicación, en lugar de a la aplicación completa.

Si nos referimos al entorno .Net Core podemos aprovechar los tipos de proyecto minimal web api y web api como base para microservicios. Usar patrones como idempotent y cqrs. También crear microservicios resilientes con la librería Polly.

Sin embargo, también hay desafíos en la implementación de una arquitectura de microservicios. Por ejemplo, puede ser más complicado hacer seguimiento y monitorear el rendimiento de una aplicación compuesta por muchos microservicios diferentes. Además, puede ser más difícil garantizar la consistencia de la aplicación cuando está dividida en muchos componentes independientes.

En general, la arquitectura de microservicios es una opción interesante para aplicaciones de gran escala y complejidad, especialmente cuando se requiere un alto grado de flexibilidad y escalabilidad. Sin embargo, es importante evaluar cuidadosamente si esta arquitectura es adecuada para el proyecto en cuestión y estar consciente de los desafíos y requisitos adicionales que conlleva su implementación.

{lang: 'es'}

Machine Learning y ML.Net

miércoles, 19 de enero de 2022 Sin comentarios

La definición más básica de tecnologías de la información es la aplicación de la tecnología para resolver problemas empresariales u organizativos a gran escala. Inicialmente han sido en el ámbito del cálculo, tareas recursivas o procesamiento de gran número de datos, donde se puedan sacar ventajas de la computación. Cuando las tecnologías llevan a un dispositivo a adquirir y aplicar conocimiento y llevar a cabo comportamiento inteligente, entonces hablamos de inteligencia artificial, permitiendo así construir sistemas inteligentes para diferentes áreas de aplicación.
Para ello, estos sistemas inteligentes requieren combinar distintas tecnologías, abarcando desde la generación o captura de datos, el procesamiento de los datos con infraestructuras de computación adecuadas, la analítica de los datos, y el soporte al aprendizaje automatizado o la toma de decisiones.

Un campo de la inteligencia artificial es machine learning. Entendemos por machine laerning, conseguir que las computadoras hagan predicciones sin ser programadas explícitamente. Machine learning se usa para resolver problemas que son difíciles (o imposibles) de resolver con programación basada en reglas (por ejemplo, instrucciones if y bucles for). Un paso más en machine learning, aprendizaje automático, es cuando se introducen redes neuronales, que permiten que este aprendizaje automático sea más profundo y más complejos los conceptos que pueda aprender, se habla entonces de Deep Learning.

En esta entrada, nos referimos a ML.Net, que Microsoft lanzó en 2018 como preview, un marco de machine learning gratuito, multiplataforma y de código abierto diseñado para llevar el poder de (ML) a las aplicaciones .NET para una variedad de escenarios.
ML.NET es algo más que una biblioteca de Machine Learning que ofrece un conjunto específico de características; ofrece una API de alto nivel y un marco integral que no solo aprovecha sus propias características de ML sino que también simplifica otras bibliotecas y tiempos de ejecución de infraestructura de ML de nivel inferior.

En este ejemplo, se ha usado la bb.dd Northwind, que consiste en las operaciones de una empresa de exportación / importación en el sector de la alimentación, como catálogo de pedidos, y usar SVD (singular value decomposition) / One Class-Matrix Factorization, como modelo que muestre un ranking de productos a recomendar para los items en el pedido. La web puede verse en https://northwindml.azurewebsites.net/.

{lang: 'es'}

Asp.net core 5 web api crud con Angular

martes, 2 de febrero de 2021 Sin comentarios

En la entrada http://www.jcamweb.com/blog/aspnet/net-y-net-core-son-ahora-net-5-0/ se describieron algunas de las ventajas de la actualización de asp.net core 5. Como un tipo de las aplicaciones típicas es usar un backend en webapi y frontend angular, por sus ventajas de ser una SPA, arquitectura en componentes y posibilidades de PWA,en esta entrada vamos a ver las posibilidades que ofrece usar el proyecto propio de Visual Studio para desarrollar este tipo de aplicación.

Una vez publicada la aplicación en mi hosting añadiré el enlace para testearla. Actualmente en https://bookswebapiang.azurewebsites.net/ En el repositorio de GitHub
https://github.com/jcamweb/BooksWebApiAng código fuente.

{lang: 'es'}
Categories: asp.net Tags: ,

.Net y .Net Core son ahora .Net 5.0

lunes, 4 de enero de 2021 Sin comentarios
.net 5.0
.net 5.0

En 2001 apareció .Net actualmente en la versión 4.8, este fue un framework de desarrollo común para aplicaciones de escritorio y web siendo el estándar en Windows. Posteriormente en 2016 Microsoft  presentó .Net Core una plataforma de desarrollo modular, disponible para Linux, Mac y Windows y bajo licencia MIT. Desde finales de 2020 está la unificación de estos dos framework en .Net 5.0. Veamos algunas de las mejoras.

Primero decir que se ha eliminado «Core» del nombre para enfatizar que esta es la implementación principal de .NET en el futuro. .NET 5.0 admite más tipos de aplicaciones y más plataformas que .NET Core o .NET Framework. Mejora en el «Garbage Collector» GC, el recolector de memoria mejora sustancialemte respecto a .Net 4.8 y .Net Core 3.1 usando BenchmarkDotNet. Mejora en el compilador «Just-In-Time» Jit, del 40% respecto a .Net 4.8. Optimización en el procesamiento de textos, dichos cambios se extienden desde microoptimizaciones en rutinas que procesan caracteres individuales hasta revisiones de bibliotecas completas de procesamiento de texto. Y para quienes utilizan C#, como no, incorpora todas las mejoras de la versión C# 9.0.

{lang: 'es'}
Categories: asp.net Tags: , ,

Publicar en kubernetes aplicación asp.net core

miércoles, 9 de diciembre de 2020 Sin comentarios


kubernetes
kubernetes

En la entrada http://www.jcamweb.com/blog/aspnet/asp-net-core-web-api-compartido-en-windows-azure-api/ detallamos el interés y pasos de usar el Api Management de Windows Azure para tener una asp.net core api publicada en el cloud. Pero qué pasa si queremos olvidarnos de desarrollar para un sistema operativo / entorno concreto, ir comprobando que librerías deben estar instaladas para ejecutar nuestra aplicación, y tener servidores / escalabilidad de inmediato. La respuesta es publicar en kubernetes.

Leer más…
{lang: 'es'}
Categories: asp.net Tags: , ,