erlang

codemirror主题效果概览

我们两清 提交于 2020-10-23 11:04:43
codemirror是目前最流行的在线编辑器插件,本文主要是罗列codemirror提供的所有主题效果,如果你需要使用codemirror制作一个在线编辑器,可以参考本文选择一个喜欢的主题。 本文使用的目标对象是vue,其他语言或框架也是类似的。为了减小纵向篇幅,这里使用了三个codemirror,分别展示template、script和style的效果。 1. 3024-day 2. 3024-night 3. abcdef 4. ambiance-mobile 5. ambiance 6. ayu-dark 7. ayu-mirage 8. base16-dark 9. base16-light 10. bespin 11. blackboard 12. cobalt 13. colorforth 14. darcula 15. dracula 16. duotone-dark 17. duotone-light 18. eclipse 19. elegant 20. erlang-dark 21. gruvbox-dark 22. hopscotch 23. icecoder 24. idea 25. isotope 26. lesser-dark 27. liquibyte 28. lucario 29. material-darker 30. material-ocean

分布式高并发下Actor模型如此优秀

风流意气都作罢 提交于 2020-10-22 08:58:13
写在开始 一般来说有两种策略用来在并发线程中进行通信:共享数据和消息传递。使用共享数据方式的并发编程面临的最大的一个问题就是数据条件竞争。处理各种锁的问题是让人十分头痛的一件事。    传统多数流行的语言并发是基于多线程之间的共享内存,使用同步方法防止写争夺,Actors使用消息模型,每个Actor在同一时间处理最多一个消息,可以发送消息给其他Actor,保证了单独写原则。从而巧妙避免了多线程写争夺。和共享数据方式相比,消息传递机制最大的优点就是不会产生数据竞争状态。实现消息传递有两种常见的类型:基于channel(golang为典型代表)的消息传递和基于Actor(erlang为代表)的消息传递。 Actor简介 Actor模型(Actor model)首先是由Carl Hewitt在1973定义, 由Erlang OTP 推广,其 消息传递更加符合面向对象的原始意图。Actor属于并发组件模型,通过组件方式定义并发编程范式的高级阶段,避免使用者直接接触多线程并发或线程池等基础概念。 Actor模型=数据+行为+消息。 Actor模型是一个通用的并发编程模型,而非某个语言或框架所有,几乎可以用在任何一门编程语言中,其中最典型的是erlang,在语言层面就提供了Actor模型的支持,杀手锏应用RabbitMQ 就是基于erlang开发的。 更加面向对象 Actor类似面向对象编程

消息队列01-Rabbitmq安装和管理界面简介

ぃ、小莉子 提交于 2020-10-21 17:23:33
消息队列教程目录链接 https://my.oschina.net/u/4039389?tab=newest&catalogId=7011524 docker 安装Rabbitmq docker pull rabbitmq:3-management docker run -d --hostname my-rabbit --name rabbit15672 -v /home/rabbitmq/15672:/var/lib/rabbitmq -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=admin -p 15672:15672 -p 5672:5672 rabbitmq:3-management 进入管理界面 http://127.0.0.1:15672 username:admin password:admin Overview Name:broker名称 File descriptors:broker打开的文件描述符和限制。 Socket descriptors:broker管理的网络套接字数量和限制。当限制被耗尽时,RabbitMQ将停止接受新的网络连接。 Erlang processes:erlang启动的进程数。 Memory:当前broker占用的内存。 Disk space:当前broker占用的硬盘。

把 4个消息队列都拉到一个群里后,他们吵起来了

时光毁灭记忆、已成空白 提交于 2020-10-20 04:38:06
从事软件开发的同学,一定都听过或用过消息队列,比如 RabbitMQ,Kafka。消息队列简单来说就是生产者将很多消息放到一个队列结构中,由其他消费者来消费。想了解更多 队列 的知识,看下我之前写的 18 个 Queue 的文章,保证整的明明白白。 传送门: 45张图庖丁解牛18种Queue 。 那如果把常见的四大消息队列拉到一个群里,会碰出哪些火花呢? 被嫌弃 四大队列被 中间件大队长 拉到了一个群里面。 群名:悟空聊架构群。 成员数:25 个。 管理员:中间件大队长。 群主:神秘悟空哥。 大家来感受下他们的聊天界面吧~ 👇👇👇 群聊画面 1 RabbitMQ 单独找中间件大队长聊天的画面。 单聊画面 1 涉及的故事: Erlang 是啥? 并非一门新语言,出现于 1987 年。并不是面向对象语言。 函数式编程,基于进程并发,高并发、分布式是它的优势。 由爱立信制造商专门为通信应用设计,在国内主要是游戏领域用到。 Erlang 为啥会被其他队列嫌弃? 因为 RocketMQ、ActiveMQ 都是用 Java 实现的,Kafka 是用 Scale 和 Java 实现的,这三种消息队列从语言实现上都有些类似。 在国内现如今超流行的 Java 的技术生态中,懂 Java 又懂 Erlang 的就比较少了,愿意花时间和精力在 Erlang 上面的就更少了。 快和慢 群聊画面 2

用 Python 进行 DeFi 应用的开发——不同的区块链项目是如何解决安全问题的?

耗尽温柔 提交于 2020-10-14 14:59:22
Tezos(特所思)作为著名的 PoS 公链,其亮点并不仅仅只是 Staking,Tezos 的形式化验证特征同样也是其主要技术亮点之一。形式化验证能让 DeFi 的安全性方面如虎添翼,让用户对资金的智能合约安全更加有信心。 形式化验证方法和 DeFi 安全 DeFi 的爆发式增长吸引了不少开发者,著名的 DeFi 协议如 Compound、Uniswap、Syntheix 累计收获了上亿美元的资金。但是,DeFi 存在一个重大漏洞:安全性。 这个漏洞的代价是昂贵的,它给一些区块链项目(比如以太坊)的网络效应带来了负面的影响。过去几个月被攻击的 DeFi 项目就包括 Curve.fi、Lendf.Me、PegNet 等,其损失从数十万美元到数千万美元不等。tBTC 在上线几天后通过自查及时发现了 bug 并冻结了存币,避免了一场灾难。 而对于注重安全性的 DeFi 开发者来说,Tezos 的形式化验证方案能够在加强安全性的同时赋能 DeFi 应用。 在传统互联网应用中,如果服务器被黑客攻击,只需要对服务器端用户数据进行回滚就可以挽回用户损失。因此,重视用户体验的传统互联网应用可以以牺牲安全性换取速度和功能上的快速迭代。 然而在 DeFi 应用中,由于区块链的不可篡改性,智能合约一旦上线并出现安全隐患,对用户造成的损失是巨大且不可挽回的。 因此,DeFi

TIOBE 9 月榜单:C++ 重振旗鼓

夙愿已清 提交于 2020-10-11 09:28:49
C++ 近期发展状态不错,依旧在榜单中排第四,但排名比率保持增长,本月为 7.11%。 2003 年是 C++ 的巅峰时期,当年 8 月,它的 TIOBE 排名峰值为 17.53%,接近第二名,并拿下了当年的年度编程语言奖。但 2005 年之后,C++ 的榜单排名再也没有超过 10%,甚至在 2017 年达到历史最低值 4.55%。但是,与去年相比,C++ 现在是榜单中增长最快(+1.48%)的语言。 TIOBE CEO Paul Jansen 认为,新的 C++ 20 标准带来了极大的正面影响。C++ 的积极趋势赶超了其他语言,例如 R(+1.33%)和 C#(+1.18%),以及与去年相比损失了 3.18% 排名率的 Java。 TIOBE 9 月 TOP 20 编程语言 单就名次来看,榜单前十变化不大,SQL 守住了第 10 名的位置。PHP 与 R 调换位置,上升到第 8 位,但从总体趋势来看,还是 R 语言增长率更高一些。 Groovy 上个月重回榜单后,名次又上升一位。上期卡住第 20 名,在榜单边缘徘徊的 Rust 也成功留了下来,本月排名 18。 另一个亮点是,常年排在第 24 或 25 名的 Dart(+0.77%)终于进入 top 20,本月排名 20。但第 21 名 Logo(+0.76%)和第 22 名 Classic Visual Basic(+0.75%

rabbitmq群集

為{幸葍}努か 提交于 2020-10-11 07:32:37
RabbitMQ是实现了高级消息队列协议(AMQP)的开源消息代理软件(亦称面向消息的中间件)。RabbitMQ服务器是用Erlang语言编写的,而集群和故障转移是构建在开放电信平台框架上的。所有主要的编程语言均有与代理接口通讯的客户端库。 实验环境 centos6.5_x64 192.168.10.16 mq1_master 192.168.10.14 mq2_slave 4369 erlang发现 5672 client端通信口 25672 server间内部通信口 15672 管理界面ui端口 实验软件 rabbitmq-server-3.7.14-1.el6.noarch.rpm 软件安装 sed -i.bak 's/https/http/g' /etc/yum.repos.d/epel.repo cp -pv /etc/hosts /etc/hosts.bak cat /etc/hosts 192.168.10.16 mq1 192.168.10.14 mq2 cp -pv /etc/sysconfig/network /etc/sysconfig/network.bak cat /etc/sysconfig/network HOSTNAME=mq1 reboot/init5 重启生效修改主机名 scp /etc/hosts root@192.168.10.14:/etc

linux安装mq

一个人想着一个人 提交于 2020-10-09 03:13:24
首先需要Yum源支持: cd /usr/local/src/ mkdir rabbitmq cd rabbitmq wget http://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm rpm -Uvh erlang-solutions-1.0-1.noarch.rpm rpm --import http://packages.erlang-solutions.com/rpm/erlang_solutions.asc sudo yum install erlang 运行以上代码 效果如下: 上面都成功后 安装RabbitMQ 上传rabbitmq-server-3.4.1-1.noarch.rpm文件到/usr/soft/rabbitmq/ 安装: rpm -ivh rabbitmq-server-3.4.1-1.noarch.rpm 这样就安装Ok了 都比较简单 RabbitMQ 服务的启动: service rabbitmq - server start service rabbitmq - server stop service rabbitmq - server restart 注意要去掉后面的逗号。 开启web界面管理工具 rabbitmq-plugins enable rabbitmq