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开发的产品)
浏览 6
点赞
评论
收藏
分享

手机扫一扫分享

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

手机扫一扫分享

编辑 分享
举报