Search  
Tuesday, January 06, 2009 ..:: Products and Services » Products » ESB.NET ::.. Register  Login
 SiteMap Minimize

    

   Minimize
Keystroke IT

    

 Keystroke ESB.NET - a Distributed, Lightweight .NET 2.0/3.0 based Enterprise Service Bus Minimize

ESB.NET_Logo15.png

For the latest builds on ESB.NET, please go to:

http://www.codeplex.com/KeystrokeEsbNet

This site (www.keystroke.com.au and www.esb.net.au ) will be updated shortly and will contain

more details on getting started with ESB.NET including tutorials & samples.

In the mean time, ignore all content in this page after this point.

 

Try it online here...

http://60.241.173.62/esb/source/management/default.aspx

Product highlights

  • Plug-In framework for building business services and integration components
  • Resulting services exposed via SOA best principles, and multiple transports (SOAP, raw HTTP).
  • Work at the message level for your business services. All SOAP Web services automatically exposed through single WSDL, so you never need to touch WSDL again. Document/Literal message format. WS Basic Profile 1.1 compliant messages.
  • Abstracted ESBEnvelope (or create your own envelope) and helper classes to make message manipulation (documents and attachments) a snap. Concentrate on the business issues whilst the ESB libraries take care of all the lower level details.
  • Configurable execution of plug-in services modules.
  • Visual Studio template project & class for building services
  • Centralised management of all services
    • Logging
    • Configuration (via application blocks)
      • Hot configuration means you can change log levels, add/remove new components without taking down the running system - eg. change log level to troubleshoot errors, or replace faulty component at runtime without taking system down.
      • Option(default) to deploy add-ins in separate folder to .NET Bin directory, to make your development & deployment easier.
      • DOES NOT USE THE GAC!!!
    • Request level logging across instances
    • Performance optimised (~1200 (test) rq/s on a single socket 2.8GHz Quad Core CPU, with HTTP Transport and 1/2k sample message and test adaptor), near linear scalability with CPU & NLB.
  • Developed over past 9 years on small, medium & large projects which guarantees it will be suitable for your size project. Can be used from simple websites to complex systems integration projects, all with the same integration architecture.
  • Comprehensive Management Console for remote management (separate URL from running services).
  • Best practices MS Application Blocks used to keep core & plug-in functionality extensible & adequately decoupled.
  • Client-side components also included (highly recommended) to abstract away message creation and calling services. Single URL to configure Web Service Endpoints.
  • Simple/Remtote Message testing suite for functionality/regression/build verification testing, as well as specific message testing console for testing services. No need for test harness etc.
  • IIS6/ASP.NET hosted so youcan use all those nice IIS & ASP.NET features for managing your Services. eg. Web Garden, Process Recycling etc.
  • Rudimentary BAM with SQL Server 2005

 

ESB Management Console - 1600x1200 screen resolution recommended for running/viewing the Management Console.

 ESB.JPG
You can also couple it with Windows Workflow to build a rudimentary BPM system.


      

 Download and Installation Instructions Minimize

DOWNLOAD DETAILS

Latest Build: Deploy_6.2.1.0.zip
You will also need the pre-requisite software listed below before installing & running ESB.NET.
WCF is the default transport.
WSE 3 is required in this build.
 
Recommended configuration
Windows 2008 Server Required Components
  • MSMQ - Private Queues - no AD required
  • Microsoft .NET Framework 2.0 and 3.5 (WCF)
  • IIS - ASP.NET 2.0
    • To Create Virtual Directories, run: Source\ESB\Base\Solutions\Main\Setup\Setup.cmd
Note:
After you run the installation script, Source\ESB\Base\Solutions\Main\Setup\Setup.cmd, you will have something like the following in IIS:
 
Windows XP deployment
Also, if running under Windows XP, you may want to create a different user for the ASP.NET services to run under, in which case, make the following change to your machine.config file (in the %windir%\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONFIG directory).

<system.web>

<processModel autoConfig="true"  userName="ESBUser" password="ESBPassword"/>

IISPaths.JPG
This will create the Virtual Directory Tree as shown above.
The two key Virtual Directories are:
   Management
and
   CoreInternetTransportAdaptors
 
After you run the scripts to create the IIS Virtual Directories, create an app pool (IIS6) and add the Virtual Directories to that app pool. Do it at the ESB level to save you having to do this multiple times. Assign the user for this app pool full NTFS priviliges to the ESB tree in the file system. Also, in the IIS directory security for those Virtual Directories, use the ESBUser account for the anonymous website access as well. You can later tighten security further as required.
 
  • SQL Server 2000 or 2005 (Enterprise, Standard, Express, MSDE)
    • Need to create DB manually & run script
      • Create Database, Default database name (in config files etc.) is ESBLog.
      • Run DB Script:

      Source\ESB\Base\Solutions\Main\Setup\InstallScripts\Database\ESBLog_SQL2k.sql

      or, if you have SQL Server 2005 and want to be able to use XQuery to do rudimentary BAM (& use the soon to be released lightweight BAM Service Adaptor), run the following script

    Source\ESB\Base\Solutions\Main\Setup\InstallScripts\Database\ESBLog_SQL2k5.sql

    Note: You will have to manually delete any existing tables if you've already run the ESBLog_SQL2k.sql script. These are the two tables - ESBLog and ESBLogSummary tables.

    which uses XML datatypes instead of the standard varchar datatype. You will also have to set the following value to true (default config setting).

        <add key="MsSqlLogger.IsMsSql2005" value="true"/>

    Check out the blogs on sample XQuery queries to query your log data. You can then use this as-is or in conjunction with a BAM Service adaptor to form the basis of BAM functionality.

    • Run Registry entry files. You may have to edit the paths in the files.
      1. MSMQTriggers_Deploy.reg - MSMQ Triggers & Trigger Rules. Required for all async processing
      2. ESB.Core.Async.MSMQTriggersEntryPoint.ComServer_Deploy.reg - .NET Assembly registered as a COM object to be called by MSMQ Triggers.

    *Windows 2003 Enterprise required only for Network Load Balancing feature.

    • WSE3.0 (For WSE3.0 Transport adaptor)
    • Microsoft .NET Framework 3.0 (For WCF Transport adaptor)
    • IE Web Controls (For Management Console)

    • You may also wish to use some of the WCF and WSE Trace Tools to view messages entering and leaving ESB.NET.
    • Also, YATT is recommended for those times that you want to see what is actually sent on the wire. See Simon Fell's YATT in the downloads section.

  • Sharepoint

    If you're running the ESB services on a Sharepoint website, then you will need to do the following:

    1. Exclude the ESB virtual directory from the Sharepoint managed sites by doing the following:
      • In the Sharepoint admin website,
        1. Select "Configure Virtual Server Settings"
        2. Select "Default Website" or whatever website you've installed ESB.NET to
        3. Under "Virtual Server Management" select "Define Managed Paths"
        4. In the "Add a new path" textbox, type in "/ESB"
        5. In the radio button list, select "Exclude"
        6. Click OK. The entry should be listed in the list of excluded paths above.
        7. Exclude the "webctrl_client" virtual directory in the same way. This is used by the IE Web Controls and will not be required in future.
    2. Change the trust levels in the Sharepoint web.config file (usually in C:\Inetpub\wwwroot\web.config as shown below)

        <!--<trust level="WSS_Minimal" originUrl="" processRequestInApplicationTrust="false" />-->
        <trust level="Full" originUrl="" processRequestInApplicationTrust="false" />

        3. Enable Session State by adding this line in the Sharepoint web.config file (usually in C:\Inetpub\wwwroot\web.config as shown below but commented out, so all you should need to do is uncomment it)

             <add name="Session" type="System.Web.SessionState.SessionStateModule"/>

    and also changing the value of the enableSessionState attribute to true.

    <pages enableSessionState="true" enableViewState="true" enableViewStateMac="true" validateRequest="false" enableEventValidation="false">
      


  •       

     Running ESB.NET Minimize

    After installing ESB.NET, you need to verify that it's operational. To do this, navigate to the ESB.NET management console (URL should be something like: http://localhost/ESB/Source/Management/Default.aspx.)

    where Source in this case is the ESB.NET instance name.

    Select the Testing/Functionality/SystemTest node in the treeview on the left.

    Login as

       uid=admin

       pwd=admin

    You should get a screen like:

    ESBSystemTestPage.JPG

    Click on Test All.

    You should get  a Pass  result in all the rows.

    If the attachments test fails, check the path to the attachments referenced in the envelope.

    General Testing

    When running ad-hoc requests, use the Testing/Functionality/Send Requests link (read the Testing/Functionality/Readme link for instructions on how to use this).


          

    Copyright 2006 Keystroke IT   Terms Of Use  Privacy Statement
    DotNetNuke® is copyright 2002-2009 by Perpetual Motion Interactive Systems Inc.