GithubHelp home page GithubHelp logo

anthrax3 / highway Goto Github PK

View Code? Open in Web Editor NEW

This project forked from borllor/highway

0.0 0.0 0.0 5.12 MB

Highway Project: ESB(Enterprise Service Bus), Message Center

C# 58.92% HTML 4.43% JavaScript 16.83% CSS 18.88% ASP 0.06% TSQL 0.88%

highway's Introduction

Highway

Background

In October 2015 at JinRi.cn firm. As the business grows, We have met a big problem order-state changing notifications. However, more than 20 applications get the order-state changed info by scanning Order Database. Someday, requests from scanning and clients almost reached the maximum 32767 concurrent connections. So the database dealing with transactions become very slow because the internal queue is full and thread context switching takes up a lot of CPU time. You know all related things went into a vicious circle. So we stopped all scanning windows services, and appropriately rise maximum threshold of database connections. Two hours later everything looked as good. We just reopen 3 scanning services. So we have made a decision to build a new project “Highway” meaning the Enterprise Message Bus. I am responsible for leading the project in design and developing. I spend five days to design, and we discuss it about 6 times. we developed for 7 days and testing and Load testing took 5 days. Highway collects all message from the business systems and notifies all registered clients. it decouples message producing and message consuming. Meanwhile, Highway reserve high availability, high concurrency, scalability. And it was launched in December 2015. the Highway is comprised of four SOA services, receiver service, builder service, redo service and notify service. Nowadays, It collects nearly 1 million messages and sends out more than 10 millions messages every day. And from receiving to sending, It takes about 1 second.

Design

System Structure Diagram

the Highway is comprised with four SOA services, receiver service, builder service, redo service and notify service. System Structure Diagram

Activity Diagram

We use MQ, Redis and concurrent computing to rise performance. Activity Diagram

System Screen Shots

System Configuration

System Configuration System Configuration System Configuration

Client-Interface Configuration

Client-Interface Configuration

Message-Type Configuration

Message-Type Configuration

Message-Received Management

Message-Received Management

Message-Noticed Management

Message-Noticed Management

Discuss

If you have any question, please feel free to let me know.

Contact Info

Email: [email protected] City: Auckland, New Zealand.

highway's People

Contributors

borllor avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.