이 글은 기계 번역의 미러 문서이며, 원본 기사로 바로 이동하려면 여기를 클릭해 주세요.

보기: 16182|회답: 1

[ASP.NET] 기반. .NET 플랫폼

[링크 복사]
게시됨 2016. 8. 26. 오후 4:20:18 | | |
배운 이후로. .NET, 우아한 프로그래밍 스타일, 매우 단순한 확장성, 충분히 강력한 개발 도구, 그리고 매우 짧은 학습 곡선 덕분에 이 플랫폼에 강한 관심이 생겼고, 제 작업과 공부에 오픈 소스 구성 요소도 쌓았습니다.
분산 캐싱 프레임워크:
Microsoft Velocity: 마이크로소프트 자체 분산 캐시 서비스 프레임워크입니다.
멤카헤드: 현재 많은 웹사이트에서 웹사이트 접근 속도를 향상시키기 위해 사용하는 분산 캐싱 시스템입니다.
Redis:는 고성능 KV 데이터베이스입니다. 이 게임의 등장은 멤캐시드의 일부 단점을 대체로 보완합니다.
EnyimMemcached: 좋은 분산 이퀄라이제이션 알고리즘을 갖춘 Memcached 최고의 .NET 클라이언트에 접근하세요.
오픈 소스. .NET 시스템 추천:
OXITE: 마이크로소프트 ASP.NET MVC 사례 발표 프레임워크를 도입했습니다.
펫샵: 마이크로소프트 ASP.NET 펫샵.
Orchard: 외국 MVC 오픈 소스 블로그 시스템입니다.
SSCLI: NET Framework 2.0 시대의 마이크로소프트 오픈 소스 코드입니다.
DasBlog: 해외에서 운영되는 ASP.NET 기반 블로깅 시스템입니다.
BlogEngine.NET: 해외에서 제공하는 무료 오픈 소스 블로깅 시스템.
Dotnetnuke.NET: ASP.NET 기반 오픈 소스 포털 프로그램 세트가 매우 훌륭합니다.
Discuz.NET: 국내 오픈 소스 포럼 커뮤니티 시스템.
nopCommerce와 Aspxcommerce: 해외에서 제공하는 고품질 오픈 소스 B2C 웹사이트 시스템 집합.
JumboTCMS 및 DTCMS: 중국의 두 개의 오픈 소스 웹사이트 관리 시스템:
로그 예외 처리:
Log4Net.dll: 가볍고 무료이며 오픈소스 .NET 로깅 프레임워크입니다.
엔터프라이즈 도서관 로그 애플리케이션 블랙: 마이크로소프트 엔터프라이즈 도서관 로깅.
Elmah: 가장 인기 있는 ASP.NET 애플리케이션 예외 기록 프레임워크를 구현합니다.
NLog는 Log4Net보다 성능이 높고 사용 및 유지보수 난이도가 낮은 간단하고 유연한 로깅 라이브러리입니다.
NoSQL 데이터베이스 소개:
Mongodb: 분산 파일 저장 데이터베이스.
멤베이스: 가족의 새로운 헤비급 멤버.
자동화된 작업 스케줄링 프레임워크
Quartz.NET: 오픈 소스 작업 일정 및 자동화된 작업 프레임워크.
Topshelf: 윈도우 서비스를 만들기 위한 또 다른 오픈 소스 프레임워크
의존성 주입 IOC 컨테이너 프레임워크:
Unity: Microsoft의 patterns and practicest 팀이 개발한 IOC 의존성 주입 프레임워크로, AOP 교차 절단 문제를 지원합니다.
MEF(관리 확장 프레임워크): .NET 애플리케이션을 확장하고 플러그인 시스템 개발을 가능하게 하는 프레임워크입니다.
Spring.NET: 의존성 주입, 측면 지향 프로그래밍(AOP), 데이터 접근 추상화, ASP.NET 통합.
Autofac: 가장 인기 있는 의존성 인퓨전 및 IOC 프레임워크로, 경량이고 고성능이며 프로젝트 코드에 거의 침해가 되지 않습니다.
PostSharp: 정적 AOP 교차 편집을 구현하며, 사용이 간단하고 강력하며 목표 요격 방법에 변경이 필요 없습니다.
Ninject: .NET 기반의 경량 및 오픈 소스 기반 의존성 인젝션 IOC 프레임워크
일반적으로 사용되는 여러 ORM 프레임워크:
EF(ADO.NET 엔터티 프레임워크): 마이크로소프트가 ADO.NET 를 기반으로 개발한 ORM 프레임워크입니다.
Nhibernate: .NET 환경을 위한 경량 ORM 프레임워크입니다.
SqlMapper.cs: 소규모 프로젝트를 위한 일반적인 C# 데이터베이스 접근 클래스입니다.
AutoMapper: 많은 하드코딩을 줄이고 컴팩트하며 유연성이 뛰어나며 성능도 괜찮은 인기 있는 객체 매핑 프레임워크입니다.
SubSonic: 귀하의 요구에 맞는 코드 생성기를 제공하는 훌륭한 오픈소스 ORM 매핑 프레임워크입니다.
FluentData: 오픈 소스 Fluent API 기반 체인 쿼리 ORM 경량 프레임워크입니다.
Dapper: 가볍고 고성능이며, EMIT 생성 ORM 프레임워크를 기반으로 합니다.
EmitMapper: 반사 메커니즘 대신 런타임에 EMIT을 통해 IL 코드를 동적으로 생성하는 고성능 ORM 프레임워크입니다.
형식 및 데이터 타입 변환
Newtonsoft.Json: 현재 .NET 개발 중인 가장 인기 있는 JSON 직렬화 라이브러리로, WebApi 라이브러리의 새 버전의 기반을 제공합니다.
System.JSON.dll: 마이크로소프트 자체 JSON 직렬화 구성 요소 (별도로 다운로드 필요)
DataContractJsonSerializer와 DataContractXmlSerializer: 마이크로소프트가 WCF에서 사용하는 직렬라이저입니다.
Javascrip{filter}tSerializer: 마이크로소프트의 WEB 개발자용 기본 JSON 포맷터입니다.
iTextSharp, PDFsharp, 그리고 PDF.NET: 통과. .NET 파일을 처리하고 PDF 문서를 생성하는 데 사용됩니다.
SharpZipLib.dll: 무료 및 오픈소스 ZIP 및 GZIP 파일 압축 해제 구성 요소.
Math.NET: 강력한 수학적 연산, 미적분, 방정식 해결, 과학적 연산.
DocX: 워드 소프트웨어를 설치할 필요 없고, C#으로 워드 파일을 사용할 수 있습니다.
SharpSerializer: 오픈 소스 XML 및 바이너리, JSON, 압축 및 최적화 프레임워크.
반성적이고 역동적인 언어
클레이 다이내믹: 오픈소스 다이내믹 프레임워크는 javascrip{filtering}t 형태로 객체를 생성할 수 있게 해줍니다.
ExposedObject: 클래스 외부의 개인 멤버들에게 동적 언어 방식으로 접근합니다.
PrivateObject: Microsoft 단위 테스트 프레임워크 내의 클래스로, 클래스의 private 멤버를 외부에서 호출하기에 편리합니다.
크로스 플랫폼 및 런타임 솔루션
MONO.NET: 크로스 플랫폼. .NET 런타임 환경을 통해 .NET 크로스 플랫폼 운영이 가능해졌습니다.
DotGnu Portable.NET: MONO.NET 와 유사한 크로스 플랫폼 런타임.
팔랑저: PHP를 .NET으로 컴파일하면 PHP와 .NET 상호 운용성이 가능해집니다.
VMDotNet: 중국 모바일 페이신에서 사용하는 .NET 런타임입니다.
Unity3D: 마이크로소프트가 C#과 Javascrip의 크로스 플랫폼 게임 개발 프레임워크를 강력히 지원합니다.
Cassini, IIS Express, Cassinidev: 오픈 소스 ASP.NET 실행 환경.
Katana: OWIN 규격을 기반으로 한 Microsoft의 비-IIS 보드 ASP.NET 및 MVC입니다.
IKVM.NET: 기반입니다. .NET은 JAVA가 .NET 위에서 실행될 수 있도록 하는 자바 가상 머신입니다.
웹 개발 및 디자인
Jumony Core: .NET을 기반으로 개발된 HTML 엔진입니다.
Microsoft.mshtml.dll, Winista.HtmlParser.dll, HtmlAgilityPack.dll: HTML 문서를 파싱하고 처리하는 프레임워크입니다.
Javascrip{filtering}t.NET Clearscrip{filtering}t (마이크로소프트에서 제작): . .NET은 Javascrip{filter}t 엔진을 개발했습니다.
NCrawler: HTML 처리 엔진인 htmlagilitypack을 위한 오픈소스 웹 크롤러입니다.
AntiXSS: 마이크로소프트의 공식 오픈 소스 라이브러리로, 화이트리스트 메커니즘을 통해 콘텐츠를 인코딩하는 사이트 간 XSS 스크립트 침입 공격을 방지합니다.
YUICompressor.NET, Microsoft Ajax 미니파이어와 Google Closure 컴파일러: JavaScrip과 CSS Compressor.
NancyFx: 가볍고 가벼운 오픈 소스 .NET WEB 프레임워크입니다. 간단한 웹 애플리케이션을 빠르게 만들고 싶다면,
AspNetPager: 중국에서 잘 알려진 ASP.NET 페이징 제어로, 여러 페이징 방식을 지원합니다.
NOPI.dll: Excel 보고서 내보내기 플러그인 (Microsoft OpenXml 구현 기반) (nopi.css.dl 스타일, CSS 스타일)
엔터프라이즈 라이브러리: 마이크로소프트의 엔터프라이즈급 애플리케이션 개발을 위한 모범 사례 구성 요소입니다.
PowerCollections: 외국 훌륭한 작가가 작성한 고급 오픈 소스 컬렉션입니다.
모바일 인터넷 및 클라우드 컴퓨팅
PushSharp: .NET을 통해 다양한 모바일 플랫폼에 메시지를 전달합니다.
안드로이드용 모노: 사용. .NET 언어 개발 안드로이드 애플리케이션:
MonoTouch: .NET 언어로 IOS 애플리케이션을 개발합니다.
PhoneGap과 AppCan: 크로스 플랫폼 HTML5 기반 모바일 개발 플랫폼.
Cordova: PhoneGap이 Apache에 기여한 후 진행된 오픈 소스 프로젝트로, PhoneGap을 구동하는 핵심 엔진입니다.
네트워크 통신 및 네트워크 프로토콜
SuperSocket: .NET을 기반으로 한 경량 및 확장 가능한 소켓 개발 프레임워크입니다.
SuperWebSocket: .NET을 통해 TML5 WebSocket 프레임워크를 구현합니다.
XProxy: 플러그인을 지원하는 기본 에이전트 어셈블리로, 내장된 NAT, 암호화 및 복호화, 역, 직접 및 간접 프록시가 포함됩니다.
그래픽 및 이미지 처리 프레임워크
Paint.NET: 기반입니다. .NET은 컴팩트하고 유연하며 강력한 그래픽 처리 오픈 소스 프로젝트입니다.
Imagemagick.NET: 오픈소스 이미지 처리 컴포넌트인 Imagemagick의 C#에 캡슐화.
Skimpt: .NET 기반의 오픈 소스 스크린샷 소프트웨어입니다.
ImageGlue.NET: 상용 이미지 처리 구성 요소는 지원하는 포맷이 매우 많습니다.
스프라이트 및 이미지 최적화 프레임워크: Microsoft CSS Wizard, 대형 이미지와 CSS 스타일을 결합한 다중 이미지.
데스크톱 애플리케이션 프레임워크
DevExpress: 데스크톱 애플리케이션용 UI 컨트롤의 세계적으로 유명한 라이브러리입니다.
Prism: 마이크로소프트가 WPF와 Silverlight를 위해 개발한 MVVM 프레임워크로, 복잡한 비즈니스 기능과 UI 결합을 기능적 모듈성이라는 개념을 통해 분리합니다.
WPFToolkit과 Fluent Ribbon 제어 제품군: Office 스타일의 리본 메뉴 개발.
테스트 및 성능 평가
Faker.Net: 대규모 테스트 데이터를 생성하는 프레임워크.
Nunit: 경량 단위 테스트 프레임워크입니다.
Moq: LINQ를 지원하며 유연하며 고성능 기능을 갖춘 매우 인기 있는 모의 프레임워크입니다.
xUnit: NUnit보다 더 나은 단위 테스트 프레임워크로, Nunit 프레임워크의 업그레이드 버전입니다.
MiniProfiler와 Glimpse: 두 가지 MVC 기반 성능 이벤트 모니터링 프레임워크.
트랜잭션 및 분산 트랜잭션 지원
KtmIntegration: NTFS 파일 시스템을 지원하는 트랜잭션 오픈 소스 클래스입니다.
NET 트랜잭션 파일 관리자: 파일 시스템 작업(복사, 이동, 삭제)에 대한 트랜잭션 지원 추가.
단어 세분화, 전체 텍스트 검색 및 검색 엔진
Lucene.net: 다양한 정보를 강력한 검색 기능을 제공하는 데 사용할 수 있는 인기 있는 고성능 전체 텍스트 색인 라이브러리입니다.
Lucene.Net.Analysis.PanGu: Pangu 중국어 세분화 확장 라이브러리 Lucene.Net 의 최신 버전을 지원합니다.
데이터 검증 구성 요소 구성
에 대한 유창성 검증 NET: LINQ 표현 방법 체인을 기반으로 한 유창한 인터페이스 검증 구성 요소.
Microsoft.Practices.EnterpriseLibrary.Validation.dll: 마이크로소프트 엔터프라이즈 도서관 검증 프로그램 블록.
CuttingEdge.Conditions: Fluent 인터페이스 방식을 기반으로 한 계약 프로그래밍 구성 요소입니다.
DotNetOpenAuth: 웹사이트가 OpenID, OAuth, InfoCard 등 인증을 지원할 수 있도록 지원합니다.
오픈 소스 차트 통계 제어:
Visifire: 3D 그리기, 곡선, 폴리라인, 섹터, 링, 사다리꼴을 지원하는 매우 좋은 WPF 차트 컨트롤 세트입니다.
SparrowToolkit: 동적 곡선을 그리는 것을 지원하는 WPF 차트 컨트롤 세트로, 오실로스코프, CPU 사용량, 파형 등이 포함됩니다.
DynamicDataDisplay: 마이크로소프트가 오픈소스로 제공하는 WPF 동적 그래프, 선 차트, 버블 차트, 히트맵 등입니다.

메시지 큐 카테고리는 확장할 수 있는데, 예를 들어 Kafka는 분산형 게시/구독 기반 메시징 시스템입니다. 주요 설계 목표는 다음과 같습니다:
메시지 지속은 시간 복잡도 O(1) 형태로 제공되며, 테라바이트 이상의 데이터에서도 일정한 시간 복잡도의 접근 성능을 보장할 수 있습니다.
처리량이 많아요. 매우 저렴한 상업용 기기에서도 단일 기기에서 초당 10만 개 이상의 메시지 전송을 지원할 수 있습니다.
메시지 분할과 Kafka 서버 간 분산 소비를 지원하며, 각 파티션에서 메시지의 순차적 전송을 보장합니다.
오프라인 데이터 처리와 실시간 데이터 처리 모두를 지원합니다.
확장하기: 온라인 수평 확장 지원.
래빗MQ
RabbitMQ는 Erlang로 작성된 오픈 소스 메시지 큐로, AMQP, XMPP, SMTP, STOMP 등 여러 프로토콜을 지원하므로 매우 무거우하고 엔터프라이즈 수준의 개발에 더 적합합니다. 동시에 브로커 아키텍처가 구현되어 메시지가 클라이언트로 전송될 때 먼저 중앙 큐에 대기열에 저장됩니다. 라우팅, 부하 분산, 데이터 지속성 지원이 잘 되어 있습니다.
레디스
Redis는 Key-Value 쌍을 기반으로 한 NoSQL 데이터베이스이며, 활발히 개발 및 유지 관리되고 있습니다. 키값 데이터베이스 저장 시스템이지만, 자체 MQ 기능을 지원하므로 경량 큐 서비스로 사용할 수 있습니다. RabbitMQ와 Redis의 온보딩 및 아웃큐 작업은 각각 100만 회씩 기록하며, 실행 시간은 10만 번마다 기록됩니다. 테스트 데이터는 128바이트, 512바이트, 1K, 10K 네 가지 크기로 나뉩니다. 실험 표: 팀에 합류했을 때, 데이터 비교가 작을 때 Redis의 성능이 RabbitMQ보다 높으며, 데이터 크기가 10K를 초과하면 Redis가 견딜 수 없을 정도로 느립니다. 팀을 떠났을 때 Redis는 데이터 크기와 상관없이 매우 좋은 성능을 보였고, RabbitMQ의 성능은 Redis보다 훨씬 낮았습니다.
제로MQ
ZeroMQ는 특히 고처리량 수요 상황에서 가장 빠른 메시지 큐잉 시스템이라고 주장합니다. ZeroMQ는 RabbitMQ가 잘하지 못하는 고급 또는 복잡한 큐를 구현할 수 있지만, 개발자는 여러 기술 프레임워크를 스스로 결합해야 하며, 이 기술적 복잡성은 이 MQ의 성공적인 적용에 도전 과제입니다. ZeroMQ는 메시지 서버나 미들웨어를 설치하거나 실행할 필요가 없는 독특한 비미들웨어 모드를 가지고 있는데, 애플리케이션이 이 서버 역할을 수행하기 때문입니다. ZeroMQ 라이브러리를 참조하기만 하면 되고, NuGet을 사용해 설치할 수 있으며, 애플리케이션 간에 메시지를 자유롭게 보낼 수 있습니다. 하지만 ZeroMQ는 비영속 큐만 제공하므로, 다운되면 데이터가 손실됩니다. 그중 트위터 Storm 버전은 0.9.0 이전 버전에서 기본적으로 데이터 스트림 전송 수단으로 ZeroMQ를 사용합니다(Storm은 0.9 버전 부터는 ZeroMQ와 Netty 모두를 전송 모듈로 지원합니다).
액티브MQ
ActiveMQ는 Apache의 하위 프로젝트입니다. ZeroMQ와 유사하게, 에이전트 및 피어 투 피어 기술을 통해 큐를 지원합니다. 동시에 RabbitMQ와 유사하게 적은 코드로 고급 애플리케이션 시나리오를 효율적으로 구현할 수 있습니다.
카프카/야프카
Kafka는 고성능 분산 출판/구독 메시지 대기열 시스템인 Apache의 하위 프로젝트이며, Jafka는 Kafka의 업그레이드 버전 위에 인큐베이팅되어 있습니다. 다음과 같은 특징을 가집니다: 빠른 지속성(fast persistence)으로, O(1) 시스템 오버헤드 하에서도 메시지를 지속할 수 있음; 일반 서버에서 10W/s의 처리량에 도달할 수 있는 고처리량; 완전 분산 시스템, 브로커, 프로듀서, 컨슈머 모두 분산을 기본적으로 지원하며 자동으로 부하 분산을 구현합니다; Hadoop 데이터의 병렬 로딩을 지원하며, 이는 로그 데이터 및 Hadoop과 같은 오프라인 분석 시스템에 적합한 솔루션이지만 실시간 처리의 한계가 있습니다. Kafka는 Hadoop의 병렬 로딩 메커니즘을 통해 온라인과 오프라인 메시지 처리를 통합합니다. Apache Kafka는 ActiveMQ에 비해 매우 가벼운 메시징 시스템이며, 매우 우수한 성능뿐만 아니라 분산 시스템으로도 잘 작동합니다.




이전의:.net ToString() 서식
다음:C#/.NET IP 포트 스캐너 [소스 코드]
게시됨 2016. 8. 26. 오후 4:22:42 |
네, 몇 개 사용해봤고 아직 본 적은 없어요
면책 조항:
Code Farmer Network에서 발행하는 모든 소프트웨어, 프로그래밍 자료 또는 기사는 학습 및 연구 목적으로만 사용됩니다; 위 내용은 상업적 또는 불법적인 목적으로 사용되지 않으며, 그렇지 않으면 모든 책임이 사용자에게 부담됩니다. 이 사이트의 정보는 인터넷에서 가져온 것이며, 저작권 분쟁은 이 사이트와는 관련이 없습니다. 위 내용은 다운로드 후 24시간 이내에 컴퓨터에서 완전히 삭제해야 합니다. 프로그램이 마음에 드신다면, 진짜 소프트웨어를 지원하고, 등록을 구매하며, 더 나은 진짜 서비스를 받아주세요. 침해가 있을 경우 이메일로 연락해 주시기 바랍니다.

Mail To:help@itsvse.com