AMPS异步服务器设计框架

联合创作 · 2023-09-29 10:20

AMPS一个中间件,它提供了一个框架,用于构建任何一个事件驱动的,异步处理的应用。与传统的基于线程的实现,AMPS允许单线程的方法,执行高并发应用程序。

AMPS is a middleware that provides a framework to write any software application as an event driven, asynchronous process . Unlike conventional thread based implementations, AMPS allows highly concurrent applications to run as a single thread of execution. 

AMPS实现要求,应用被设计成有限状态机的模型,状态的改变是基于事件的,每个状态的改变都要求有事件处理程序一旦这样的设想,实现能提供多重好处。

AMPS implementations require that the application be modelled as a FSM (Finite State Machine) that changes state based on ‘events’. ‘Event handlers’ are written for each state change. Once envisioned in this way, implementations provide multiple benefits. 

本编程模型的好处有:

  • 所有的执行都是不需要锁的。没有锁,没有互斥,不需要请求信号。
  • 所有事件处理程序都是确定的。
  • 自然支持对称多处理,非对称多处理和多核心系统。
  • 程序是云就绪的.
  • 没有线程间上下文切换或者等待锁的系统开销。
  • 代码是在线程所产生的耦合效应应用的深入细微的错误自由。
  • 代码避免了基于线程的应用由于深度耦合而产生的bug.

Some of the benefits of this programming model are:

  • All execution is lock free. No locks, no mutexes, no semaphores required ever.
  • All event handlers are deterministic
  • Natural support for Symmetric multi-processing, Asymmetric multi processing and multi-core systems.
  • Applications are cloud ready
  • No system overhead in context switching between threads or waiting for locks.
  • Code is free of subtle bugs arising out of deep coupling effects in thread based applications.
Products developed on AMPS(基于AMPS开发的产品)
浏览 10
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报