태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.

한국 웹호스팅 서비스의 경쟁력은?
한국 웹호스팅 서비스의 경쟁력은?
한국 웹호스팅 서비스의 경쟁력은?
한국 웹호스팅 서비스의 경쟁력은?
Apple TV
cafe24.com에 무슨일이 있길래?
한국 웹호스팅 서비스의 경쟁력은?

카페24의 호스팅 서비스를 이용한지 어언 4년이 흘렀는데, 'cafe24.com에 무슨일이 있길래?' 와 같은 일이 생기고 나서 카페24를 떠나고 싶다는 생각을 하게 되었지요......

Apple TV

Apple TV는 애플에서 만든 IPTV의 일종으로 iTunes가 실행되고 있는 네트웍 컴퓨터의 미디어(음악, 영상, 사진)을 재생할 수 있게 해 주는데요... 아래 그림은 미.....

cafe24.com에 무슨일이 있길래?

국내 호스팅 1위라고 얘기하는 카페24(http://cafe24.com)에 요즘 뭔 일이 있나 봅니다. 월요일 오전부터 근 30시간에 넘게 제가 운영하는 시스템을 장애처리하였다.....

The Pattern of ACE

Pattern Benefits
  • Preserve crucial design information used by applications & middleware frameworks & components
  • Facilitate reuse of proven software designs & architectures
  • Guide design choices for application developers
사용자 삽입 이미지
출처 : Powerpoint tutorial for C++ Network Programming: Mastering Complexity with ACE and Patterns.

~~~
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

'Software' 카테고리의 다른 글

개발자는 무슨 일을 할까?  (0) 2007.07.03
TextCube 1.5를 설치하니...  (0) 2007.07.02
The Pattern of ACE  (0) 2007.02.12
Summary of Project Management Application  (0) 2007.02.06
NMS 제품들  (0) 2007.01.04
Unix Error 코드 설명  (0) 2006.11.24

Posted by BlogZin


Leave a comment

ACE - Object Oriented(OO) Framework

오랜만에 ACE를 보니 이전에는 좀 기능이 많은 C++ Class Library였는데, 이제는 분산시스템을 위한  Framework으로 이용할 만큼 많이 발전했네요. Who is Using ACE을 보니 제가 관심두는 영역인 통신 영역에서도 벌써 많은 레퍼런스가 있군요.

The Structure and Functionality of ACE

The following diagram illustrates the key components in ACE and their hierarchical relationships:

Frameworks

ACE also contains a higher-level network programming framework that integrates and enhances the lower-level C++ wrapper facades. This framework supports the dynamic configuration of concurrent distributed services into applications. The framework portion of ACE contains the following components:

  • Event demultiplexing components -- The ACE Reactor and Proactor are extensible, object-oriented demultiplexers that dispatch application-specific handlers in response to various types of I/O-based, timer-based, signal-based, and synchronization-based events.
  • Service initialization components -- The ACE Acceptor and Connector components decouple the active and passive initialization roles, respectively, from application-specific tasks that communication services perform once initialization is complete.
  • Service configuration components -- The ACE Service Configurator supports the configuration of applications whose services may be assembled dynamically at installation-time and/or run-time.
  • Hierarchically-layered stream components -- The ACE Streams components simplify the development of communication software applications, such as user-level protocol stacks, that are composed of hierarchically-layered services.
  • ORB adapter components -- ACE can be integrated seamlessly with single-threaded and multi-threaded CORBA implementations via its ORB adapters.
The ACE framework components facilitate the development of communication software that can be updated and extended without the need to modify, recompile, relink, or often restart running applications. This flexibility is achieved in ACE by combining (1) C++ language features, such as templates, inheritance, and dynamic binding, (2) design patterns, such as Abstract Factory, Strategy, and Service Configurator, and (3) OS mechanisms, such as explicit dynamic linking and multi-threading.


Distributed Services and Components

In addition to its OS adaptation layer, C++ wrapper facades, and framework components, ACE provides a standard library of distributed services that are packaged as self-contained components. Although these service components are not strictly part of the ACE framework library, these service components play two roles in ACE:

  1. Factoring out reusable distributed application building blocks -- These service components provide reusable implementations of common distributed application tasks such as naming, event routing, logging, time synchronization, and network locking.
  2. Demonstrating common use-cases of ACE components -- The distributed services also demonstrate how ACE components like Reactors, Service Configurators, Acceptors and Connectors, Active Objects, and IPC wrappers can be used effectively to develop flexible, efficient, and reliable communication software.

Higher-level Distributed Computing Middleware Components

Developing robust, extensible, and efficient communication applications is challenging, even when using a communication framework like ACE. In particular, developers must still master a number of complex OS and communication concepts such as:

  • Network addressing and service identification.
  • Presentation conversions, such as encryption, compression, and network byte-ordering conversions between heterogeneous end-systems with alternative processor byte-orderings.
  • Process and thread creation and synchronization.
  • System call and library routine interfaces to local and remote interprocess communication (IPC) mechanisms.
It is possible to alleviate some of the complexity of developing communication applications by employing higher-level distributed computing middleware, such as CORBA, DCOM, or Java RMI. Higher-level distributed computing middleware resides between clients and servers and automates many tedious and error-prone aspects of distributed application development, including:

  • Authentication, authorization, and data security.
  • Service location and binding.
  • Service registration and activation.
  • Demultiplexing and dispatching in response to events.
  • Implementing message framing atop bytestream-oriented communication protocols like TCP.
  • Presentation conversion issues involving network byte-ordering and parameter marshaling.
To provide developers of communication software with these features, the following higher-level middleware applications are bundled with the ACE release:

  1. The ACE ORB (TAO) -- TAO is a real-time implementation of CORBA built using the framework components and patterns provided by ACE. TAO contains the network interface, OS, communication protocol, and CORBA middleware components and features. TAO is based on the standard OMG CORBA reference model, with the enhancements designed to overcome the shortcomings of conventional ORBs for high-performance and real-time applications. TAO, like ACE, is freely available, open source software.
  2. JAWS -- JAWS is a high-performance, adaptive Web server built using the framework components and patterns provided by ACE. JAWS is structured as a framework of frameworks. The overall JAWS framework contains the following components and frameworks: an Event Dispatcher, Concurrency Strategy, I/O Strategy, Protocol Pipeline, Protocol Handlers, and Cached Virtual Filesystem. Each framework is structured as a set of collaborating objects implemented by combining and extending components in ACE. JAW is also freely available, open-source software.
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

'Software' 카테고리의 다른 글

Unix Error 코드 설명  (0) 2006.11.24
MVC architecture in a J2EE application  (0) 2006.09.26
ACE - Object Oriented(OO) Framework  (0) 2006.09.14
CodeHighright에 Java 코드를 넣어보니..  (1) 2006.08.31
CVS/Subversion Resources  (0) 2006.08.31
MOM - xmlBlaster  (0) 2006.08.30

Posted by BlogZin


Leave a comment

Calendar

«   2017/06   »
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30  

Site Stats

Total hits:
114,456
Today:
3
Yesterday:
50
Statistics Graph

티스토리 툴바