TNAPS Application Server
||This article may require cleanup to meet Wikipedia's quality standards. (December 2010)|
|This article needs additional citations for verification. (December 2014)|
|Initial release||10 December 2009|
|Stable release||3 beta 1 / November 15, 2011|
|Written in||.NET, Mono|
|Operating system||Windows, Linux, Mac|
|Type||Application server, middleware|
TNAPS is a freeware .NET cross-platform application server for .NET, Mono, and Java, with component-driven architecture. It is based on the concept of application business logic separation into middleware layer. This is also called three-tier software architecture. Although there are many application servers for Java platform, there are no cross-platform application servers for .NET and Mono. The main principle of TNAPS is that a developer has to write business logic only and would be able to host it and set user access policy, database parameters and other configuration without writing code – just by existing component reusage.
Current version of TNAPS requires .NET 4 (Windows) and Mono 2.10.1 (Linux and Mac OS X)
TNAPS focuses on business logic implementation. Developer applies principle of decomposition and splits server side logic into set of components (called business objects in TNAPS). The main idea behind this decomposition is to get business objects that provide some value to the end-user (the one using client application).
Developer defines business objects contracts for accessing created server functionality and implement client application using contracts.
After finishing set of business objects development they should be arranged into Bizlet - one server application instance in TNAPS. Bizlet contains business objects, database configuration, user access permissions and hosting parameters (i.e. IP address and port to listen).
Developers or end-users of the TNAPS application can decide what kind of logic provide to the respective use by granting or revoking access to particular business object.
Business objects access permissions are defined at the user group level.
- Development of three-tier applications is straightforward.
- Developer has no problems with hosting, security, channel encryption, user access management etc.
- Windows administrators-oriented management console (MMC snap-in).
- User can switch between database server types without rewriting code.
- TNAPS supports all .NET languages.
- Database access technologies - all available in .NET : ADO.NET, LINQ, EDM
- All logic written for local TNAPS server can be migrated to cloud hosting providers like Amazon EC2 without rewriting.
- Extensibility - almost every part of the server can be extended by user.
TNAPS configuration is done within TNAPS Management Center (or Console). It is a snap-in for Microsoft Management Console.
TNAPS uses .NET Remoting for network communications. That means that client application can be implemented using .NET or Mono platform only. However, developer can extend TNAPS with WCF or any other hosting technology through hosting provider extension.
TNAPS Remoting Host Provider has some advanced (comparing to standard .NET Remoting) features: Channel Encription, Traffic Signing and Traffic Compression.
Licensing & Pricing
TNAPS is freeware, proprietary application server.
On June 9, 2011 TN reported that TNAPS 3 is being in the early beta-testing process. TNAPS 3 features .NET and Mono compatibility as well as multiple operation systems support: Windows, Linux and Mac OS X.
New major version of TNAPS application server uses component-driven approach and application can be created by combining existing components. This concept is a further development of business object approach from TNAPS 2.
Other TNAPS 3 features include:
- Ability to use .NET languages and Java in one application.
- SOAP and REST support for communications.
- Universal web console for server management and application development.
- TNAPS Marketplace for applications and components.
Starting from version 3 TNAPS can not be called pure .NET Application Server as it supports Java hosting. However, TNAPS core engine runs inside .NET or Mono.
Other .NET application servers:
Application Server resources:
- "Upcoming TNAPS 3 Release". tncor.com. June 9, 2011. Retrieved June 15, 2011.