自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 Erlang OTP学习 事务与热代码交换

在前两个服务器里,代码升级和事务语义是分开的。现在把它们组合到一个服务器里。这个服务器同时提供了热代码交换和事务语义,干净利落!

2023-08-25 22:11:13 40 1

原创 elang OTP学习 实现热代码交换的服务器

一般来说,如果大多数服务器都执行一个固定的程 序,如果要修改服务器的行为,就必须先停止服务器,再用修改后的代码重启它。而要修改这个 服务器的行为,不用停止它,只需要发送一个包含新代码的消息,它就会提取新代码,然后用新代码和老的会话数据继续工作。API里没有函数能做到这一点,因为 name_server模块只包含访问函数add和find。所以我们马上写一个新的模块。如果向服务器发送一个交换代码消息,它就会把回调模块改为消息里包含的新模块。在这里实时更换了回调模块,这就是动态代码升级。

2023-08-24 23:11:40 44 1

原创 erlang 学习 实现进程间的通信

每个进程都有一个唯一的进程标识符(PID),可以使用PID向其他进程发送消息,也可以接收其他进程发送的消息。当一个进程挂掉时,其他进程不会自动跟着挂掉,因为Erlang采用了进程隔离的机制,每个进程都独立运行在自己的虚拟机中。如果一个进程挂掉了,其他进程可以通过监视(link)机制来检测到该进程的退出,并做出相应的处理。例如,可以重新启动一个新的进程来替代挂掉的进程。所以,当一个进程挂掉了,其他进程可以通过监视机制来得知,然后根据需要进行相应的处理,而不会自动跟着挂掉。进程的双向监控link。

2023-08-23 23:08:11 161

原创 erlang OTP学习 第二天:实现事务的服务器

这段代码在服务器里实现了“事务语义”,它会在处理函数抛出异常错误时用State(状态) 的初始值继续循环。但如果处理函数成功了,它就会用处理函数提供的NewState值继续循环。当处理函数失败时,服务器会给发送问题消息的客户端发送一个消息,让它崩溃。这个客户 端不能继续工作,因为它发送给服务器的请求导致了处理函数的崩溃,但其他想要使用服务器的 客户端不会受到影响。另外,当处理函数发生错误时,服务器的状态不会改变。在实现了一个基础的服务器之后,现在来实现一下一个实现了事务的服务器。

2023-08-22 23:13:26 49 1

原创 erlang OTP学习 第一天:基本的服务器

OTP的全称是Open Telecom Platform(开放电信平台)。这是一个很有误导性的名称,其实有OTD是很通用的。它是一个应用程序操作系统,包含了一组库和实现方式,可以构建大规模、容错和分布式的应用程序。它由瑞典电信公司爱立信开发,在爱立信内部用于构建容错式系统。标准的Erlang分发套装包含OTP库。在本章的学习中,我们写了一个简单的服务器,并对其功能进行了测试。

2023-08-21 23:18:51 123 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除