Este artículo es un artículo espejo de traducción automática, por favor haga clic aquí para saltar al artículo original.

Vista: 16182|Respuesta: 1

[ASP.NET] Basado en. Plataforma .NET

[Copiar enlace]
Publicado en 26/8/2016 16:20:18 | | |
Desde que aprendí. .NET, estilo de programación elegante, escalabilidad extremadamente simple, herramientas de desarrollo lo suficientemente potentes y una curva de aprendizaje muy pequeña me han hecho interesarme mucho por esta plataforma, y también he acumulado algunos componentes de código abierto en mi trabajo y estudio.
Marco de caché distribuido:
Microsoft Velocity: El propio framework de servicio de caché distribuido de Microsoft.
Memcahed: Un sistema de caché distribuido que actualmente utilizan muchos sitios web para mejorar la velocidad de acceso a los sitios web.
Redis: es una base de datos KV de alto rendimiento. Su apariencia compensa en gran medida las carencias de Memcached en algunos aspectos.
EnyimMemcached: Accede al mejor cliente .NET de Memcached con un buen algoritmo de ecualización distribuida.
Código abierto. Recomendación del sistema .NET:
OXITE: Microsoft ASP.NET marco de presentación de casos MVC.
PetShop: Microsoft ASP.NET tienda de mascotas.
Orchard: Un sistema de blogs de código abierto extranjero del MVC.
SSCLI: El código abierto de Microsoft en la era de NET Framework 2.0.
DasBlog: Un sistema de blogs basado en ASP.NET en el extranjero.
BlogEngine.NET: Un sistema de blogs libre y de código abierto en el extranjero.
Dotnetnuke.NET: Un conjunto muy bueno de programas de portal de código abierto basados en ASP.NET.
Discuz.NET: Sistema comunitario de foros de código abierto nacional.
nopCommerce y Aspxcommerce: Un conjunto de sistemas web B2C de alta calidad y código abierto en el extranjero.
JumboTCMS y DTCMS: Dos sistemas de gestión de sitios web de código abierto en China:
Gestión de excepciones de registro:
Log4Net.dll: Un framework de registro .NET ligero, gratuito y de código abierto.
Aplicación de registro de bibliotecas empresariales negras: Registro de bibliotecas empresariales de Microsoft.
Elmah: Implementa el framework de registro de excepciones de ASP.NET aplicaciones más popular.
NLog: es una biblioteca de registro sencilla y flexible, con un rendimiento superior al de Log4Net y baja dificultad de uso y mantenimiento.
Sobre las bases de datos NoSQL:
Mongodb: Base de datos de almacenamiento distribuido de archivos.
Membase: Un nuevo miembro de peso pesado de la familia.
Marco automatizado de planificación de tareas
Quartz.NET: Marco de planificación de tareas de código abierto y automatización de tareas.
Topshelf: Otro framework de código abierto para crear servicios Windows
Marco de contenedores IOC para inyección de dependencias:
Unity: Un marco de inyección de dependencias IOC desarrollado por el equipo de patrones y práctica de Microsoft que soporta preocupaciones transversales de AOP.
MEF (Managed Extensability Framework): es un marco para extender aplicaciones .NET y permitir el desarrollo de sistemas plug-in.
Spring.NET: Inyección de dependencias, programación orientada a aspectos (AOP), abstracción de acceso a datos e integración ASP.NET.
Autofac: El framework de inyección de dependencias y IOC más popular, ligero y de alto rendimiento y prácticamente no intrusivo para el código del proyecto.
PostSharp: Implementa cortes estáticos AOP de las preocupaciones, es sencillo de usar, potente y no requiere cambios en el método de intercepción de objetivos.
Ninject: Un marco IOC de inyección de dependencias basado en .NET ligero y de código abierto
Varios marcos ORM comúnmente utilizados:
EF (ADO.NET Entity Framework): Un marco ORM desarrollado por Microsoft basado en ADO.NET.
Nhibernate: Un framework ORM ligero para entornos .NET.
SqlMapper.cs: Una clase genérica de acceso a bases de datos en C# para proyectos pequeños.
AutoMapper: Un marco popular de mapeo de objetos que reduce mucho el hardcoding, es compacto y flexible, y tiene un rendimiento aceptable.
SubSonic: Un excelente framework de mapeo ORM de código abierto que proporciona un generador de código que se adapta a tus necesidades.
FluentData: Un framework ligero de consulta encadenada basado en API de Fluent basado en API, un framework ligero de consulta ORM.
Dapper: Ligero, de alto rendimiento, basado en el marco ORM generado por EMIT.
EmitMapper: Un framework ORM de alto rendimiento que genera dinámicamente código IL a través de EMIT en tiempo de ejecución, en lugar de usar un mecanismo de reflexión.
Conversión de formato y tipo de datos
Newtonsoft.Json: La biblioteca de serialización JSON más popular actualmente en desarrollo en .NET, que sirve de base para la nueva versión de la biblioteca WebApi.
System.JSON.dll: El propio componente de serialización JSON de Microsoft (necesita descargarse por separado)
DataContractJsonSerializer y DataContractXmlSerializer: Serializadores usados por Microsoft en WCF.
Javascrip{filter}tSerializer: El formateador JSON predeterminado de Microsoft para desarrolladores WEB.
iTextSharp, PDFsharp y PDF.NET: A través de ella. .NET para procesar y generar documentos PDF.
SharpZipLib.dll: Componentes de descompresión de archivos ZIP y GZIP libres y de código abierto.
Math.NET: Operaciones matemáticas sólidas, cálculo, resolución de ecuaciones y operaciones científicas.
DocX: No hace falta instalar software de Word, ni manejar archivos de Word en C#.
SharpSerializer: Framework de código abierto para XML y binario, JSON, compresión y optimización.
Lenguaje reflexivo y dinámico
Dinámica de arcilla: El framework dinámico de código abierto permite crear objetos en forma de javascrip{filtering}t.
ExposedObject: Accede a miembros privados fuera de la clase de forma dinámica en lenguaje.
PrivateObject: Una clase en el marco de pruebas unitarias de Microsoft que es conveniente para llamar externamente a miembros privados de la clase.
Soluciones multiplataforma y en tiempo de ejecución
MONO.NET: Multiplataforma. .NET, haciendo posible la operación multiplataforma de .NET.
DotGnu Portable.NET: Tiempo de ejecución multiplataforma similar a MONO.NET.
Phalanger: Compilar PHP a .NET permite la interoperabilidad entre PHP y .NET.
VMDotNet: El runtime .NET utilizado por China Mobile Feixin.
Unity3D: El fuerte soporte de Microsoft para C# y el framework de desarrollo de juegos multiplataforma de Javascrip.
Cassini, IIS Express y Cassinidev: entornos de ejecución ASP.NET de código abierto.
Katana: el ASP.NET de boarding y MVC de Microsoft sin IIS basado en la especificación OWIN.
IKVM.NET: Basándonos en. .NET es una máquina virtual JAVA que permite ejecutar JAVA sobre .NET.
Desarrollo y diseño WEB
Jumony Core: Un motor HTML desarrollado basado en .NET.
Microsoft.mshtml.dll, Winista.HtmlParser.dll y HtmlAgilityPack.dll: Frameworks que analizan y procesan documentos HTML.
Javascrip{filtering}t.NET y Clearscrip{filtering}t (producido por Microsoft): Basados en . .NET desarrolló el motor Javascrip{filter}t.
NCrawler: Un rastreador web de código abierto para su motor de procesamiento HTML, htmlagilitypack.
AntiXSS: La biblioteca oficial de código abierto de Microsoft para prevenir ataques de intrusións de scripts XSS entre sitios, que codifica contenido mediante un mecanismo de lista blanca.
YUICompressor.NET, Microsoft Ajax Minifier y Google Closure Compiler: JavaScrip y CSS Compressor.
NancyFx: es un framework .NET WEB ligero y de código abierto. Si quieres hacer rápidamente una aplicación WEB sencilla.
AspNetPager: Un conocido control de paginación ASP.NET en China, que soporta múltiples métodos de paginación.
NOPI.dll: Plugin para exportar informes de Excel (basado en la implementación de Microsoft OpenXml) (estilo nopi.css.dl vía CSS)
Enterprise Library: El componente de mejores prácticas de Microsoft para el desarrollo de aplicaciones de nivel empresarial.
PowerCollections: Una colección de código abierto de alto nivel escrita por un genial extranjero.
Internet móvil y computación en la nube
PushSharp: Enviar mensajes push a diversas plataformas móviles a través de .NET.
Mono para Android: Usarlo. Desarrollo del lenguaje .NET aplicación para Android:
MonoTouch: Desarrollar aplicaciones IOS en lenguaje .NET.
PhoneGap y AppCan: Plataformas de desarrollo móvil multiplataforma basadas en HTML5.
Cordova: Un proyecto de código abierto tras la contribución de PhoneGap a Apache, es el motor central que impulsa PhoneGap.
Comunicación de red y protocolos de red
SuperSocket: Un framework de desarrollo de sockets ligero y escalable basado en .NET.
SuperWebSocket: Implementa el framework TML5 WebSocket vía .NET.
XProxy: El ensamblador básico de agentes que soporta plugins, con NAT integrados, cifrado y descifrado, proxies inversos, directos e indirectos.
Marcos gráficos y de procesamiento de imágenes
Paint.NET: Basado en. .NET es un proyecto de procesamiento gráfico compacto, flexible y potente de código abierto.
Imagemagick.NET: Encapsulación del componente de procesamiento de imágenes de código abierto Imagemagick en C#.
Skimpt: Software de captura de pantalla de código abierto basado en .NET.
ImageGlue.NET: Los componentes comerciales de procesamiento de imágenes tienen una amplia lista de formatos compatibles.
Sprite and Image Optimization Framework: Microsoft CSS Wizard, multiimagen que combina una imagen grande y estilo CSS.
Marco de aplicaciones de escritorio
DevExpress: Una biblioteca de control de interfaz de usuario de renombre mundial para aplicaciones de escritorio.
Prism: El framework MVVM desarrollado por Microsoft para WPF y Silverlight, que separa funciones empresariales complejas y acoplamiento de interfaces mediante la idea de modularidad funcional.
WPFToolkit y Suite de Control de Cinta Fluent: Desarrollar menús de cinta al estilo Office.
Pruebas y evaluación del rendimiento
Faker.Net: Un marco para generar grandes lotes de datos de prueba.
Nunit: Un marco ligero de pruebas unitarias.
Moq: Un framework de Mocks muy popular que soporta LINQ, flexible y de alto rendimiento.
xUnit: Un mejor marco de pruebas unitarias que NUnit, una versión mejorada del framework Nunit.
MiniProfiler y Glimpse: Dos marcos de monitorización de eventos de rendimiento basados en MVC.
Soporte transaccional y distribuido
KtmIntegration: Una clase de código abierto transaccional que soporta el sistema de archivos NTFS.
NET Transactional File Manager: Se añadió soporte transaccional para operaciones del sistema de archivos (copiar, mover y eliminar).
Segmentación de palabras, búsqueda de texto completo y motor de búsqueda
Lucene.net: Una popular biblioteca de índice de texto completo de alto rendimiento que puede usarse para proporcionar potentes funciones de búsqueda para todo tipo de información.
Lucene.Net.Analysis.PanGu: Soporta la última versión de la biblioteca de extensión de segmentación china de Pangu Lucene.Net.
Organización de componentes de validación de datos
FluentValidation para . NET: Componente de verificación de interfaz fluida basado en la cadena de métodos de expresión LINQ.
Microsoft.Practices.EnterpriseLibrary.Validation.dll: El bloque del programa de validación de Microsoft Enterprise Library.
CuttingEdge.Conditions: Un componente de programación por contrato basado en el método de interfaz Fluent.
DotNetOpenAuth: Permite que sitios web soporten autenticación con OpenID, OAuth, InfoCard y más.
Controles estadísticos de gráficos de código abierto:
Visifire: Un conjunto muy bueno de controles de gráficos WPF que soportan dibujo 3D, curvas, polilíneas, sectores, anillos y trapecioides.
SparrowToolkit: Un conjunto de controles de gráficos WPF que soportan el dibujado de curvas dinámicas, incluyendo osciloscopios, uso de CPU y formas de onda.
DynamicDataDisplay: Gráficos dinámicos WPF de código abierto de Microsoft, gráficos de líneas, diagramas de burbujas y mapas de calor.

Las categorías de cola de mensajes pueden ampliarse, como Kafka, que es un sistema de mensajería distribuido basado en publicación/suscripción. Los principales objetivos de diseño son los siguientes:
La persistencia de los mensajes se proporciona en forma de complejidad temporal O(1), y el rendimiento de acceso de complejidad temporal constante puede garantizarse incluso para datos superiores a terabytes.
Alto rendimiento. Incluso en máquinas comerciales muy económicas, puede soportar la transmisión de más de 100.000 mensajes por segundo en una sola máquina.
Soporta la partición de mensajes y el consumo distribuido entre servidores Kafka, y asegura la transmisión secuencial de mensajes en cada partición.
Soporta tanto procesamiento de datos offline como procesamiento de datos en tiempo real.
Ampliar: Apoyar la expansión horizontal online.
RabbitMQ
RabbitMQ es una cola de mensajes de código abierto escrita en Erlang que soporta muchos protocolos: AMQP, XMPP, SMTP, STOMP, por lo que es muy pesada y más adecuada para el desarrollo a nivel empresarial. Al mismo tiempo, se implementa la arquitectura del broker, lo que significa que los mensajes se colocan primero en la cola central cuando se envían al cliente. Hay buen soporte para enrutamiento, balanceo de carga o persistencia de datos.
Redis
Redis es una base de datos NoSQL basada en pares clave-valor, y está desarrollada y mantenida activamente. Aunque es un sistema de almacenamiento de bases de datos clave-valor, soporta la funcionalidad de MQ en sí misma, por lo que puede usarse como un servicio de cola ligero. Para las operaciones de incorporación y salida de cola de RabbitMQ y Redis, 1 millón de veces cada uno, y el tiempo de ejecución se registra cada 100.000 veces. Los datos de prueba se dividen en cuatro tamaños diferentes: 128 bytes, 512 bytes, 1K y 10K. Tabla experimental: Al unirse al equipo, el rendimiento de Redis es superior al de RabbitMQ cuando la comparación de datos es pequeña, y si el tamaño de los datos supera los 10K, Redis es insoportablemente lento. Al salir del equipo, Redis mostró un rendimiento muy bueno independientemente del tamaño de los datos, mientras que el rendimiento de RabbitMQ fue mucho menor que el de Redis.
ZeroMQ
ZeroMQ afirma ser el sistema de cola de mensajes más rápido, especialmente en escenarios de demanda de alto rendimiento. ZeroMQ puede implementar colas avanzadas/complejas en las que RabbitMQ no es bueno, pero los desarrolladores necesitan combinar múltiples marcos técnicos por sí mismos, y la complejidad técnica supone un reto para la aplicación exitosa de este MQ. ZeroMQ tiene un modo único no middleware donde no necesitas instalar ni ejecutar un servidor de mensajes o middleware porque tu aplicación cumplirá ese papel de servidor. Solo tienes que consultar la biblioteca ZeroMQ, que se puede instalar usando NuGet, y puedes enviar mensajes entre aplicaciones sin problema. Sin embargo, ZeroMQ solo proporciona colas no persistentes, lo que significa que si se cae, se perderán datos. Entre ellas, la versión Storm de Twitter anterior a la 0.9.0 utiliza ZeroMQ como transmisión de flujos de datos por defecto (Storm soporta tanto ZeroMQ como Netty como módulo de transmisión desde la versión 0.9).
ActiveMQ
ActiveMQ es un subproyecto bajo Apache. Similar a ZeroMQ, permite colas con tecnología de agente y peer-to-peer. Al mismo tiempo, similar a RabbitMQ, puede implementar escenarios de aplicación avanzados de forma eficiente con una pequeña cantidad de código.
Kafka/Jafka
Kafka es un subproyecto de Apache, un sistema distribuido de alta performance para publicar y suscribirse a mensajes en varios idiomas, y Jafka está incubado sobre Kafka, que es una versión mejorada de Kafka. Tiene las siguientes características: persistencia rápida, que puede persistir mensajes bajo la sobrecarga del sistema de O(1); Alto rendimiento, que puede alcanzar una tasa de 10W/s en un servidor ordinario; Sistema completamente distribuido, Broker, Productor y Consumidor soportan nativamente distribuido y realizan automáticamente el balanceo de carga; Soporta carga paralela de datos Hadoop, que es una solución viable para datos de registro y sistemas de análisis offline como Hadoop, pero con las limitaciones del procesamiento en tiempo real. Kafka unifica el procesamiento de mensajes en línea y fuera de línea mediante el mecanismo de carga paralela de Hadoop. Apache Kafka es un sistema de mensajería muy ligero en comparación con ActiveMQ y, además de un rendimiento muy bueno, también es un sistema distribuido que funciona bien.




Anterior:Formato .net ToString()
Próximo:Escáner de puertos IP C#/.NET [Código fuente]
Publicado en 26/8/2016 16:22:42 |
Sí, he usado algunos, algunos marcos, y aún no los he visto
Renuncia:
Todo el software, materiales de programación o artículos publicados por Code Farmer Network son únicamente para fines de aprendizaje e investigación; El contenido anterior no se utilizará con fines comerciales o ilegales; de lo contrario, los usuarios asumirán todas las consecuencias. La información de este sitio proviene de Internet, y las disputas de derechos de autor no tienen nada que ver con este sitio. Debes eliminar completamente el contenido anterior de tu ordenador en un plazo de 24 horas desde la descarga. Si te gusta el programa, por favor apoya el software genuino, compra el registro y obtén mejores servicios genuinos. Si hay alguna infracción, por favor contáctanos por correo electrónico.

Mail To:help@itsvse.com