2018-10-30 Vaniot
IP地址 地址的分类 IP(Internet Protocol国际互联网协议)的长度为32为(bit),分为4段,常用十进制数字表示,每段数字的范围是1~254,一个4字节的IP地址划分为两个部分用于标明网络端和标明具体的节点,分别对应两个ID(标识码):网络ID和主机ID,同一物理网络上的主机用相同的网络ID。 more 五类IP地址 A类 A类IP地址有1个字节的网络地址和3个字节的主机地址组成,网络地址的最高位(二进制)必须为"0"(第一段数字的范围[1-126]),地址的范围从1.0.0.1~126.255.255.254可用的A类网络有126个,每个网络可容纳16777214个主机 计算: 网段:首位为0 继续阅读 »
2016-02-26 Eric Wang
前奏 因为NIO并不容易掌握,所以这注定会是一篇长文,而且即便篇幅很大,亦难以把很多细节解释清楚,只能侧重于从整体上进行把握,并实现一个简单的客户端服务端消息通信框架作为例子,以便有需要的开发人员参考之。借用淘宝伯岩给出的忠告就是 - 尽量不要尝试实现自己的NIO框架,除非有经验丰富的工程师 - 尽量使用经过广泛实践的开源NIO框架Mina/Netty/xSocket - 尽量使用最新版稳定版JDK - 遇到问题的时候,可以先看下Java的Bug Database Asynchronous I/O是在JDK7中提出的异步非阻塞I/O,习惯上称之为NIO2,也叫AIO,AIO是对JDK1.4中提出的同步非阻塞I/O的进一步增强,主 继续阅读 »
2016-01-08 Jason Liao
Universal React 这篇 Post 让我们知道了怎么在服务器端渲染我们的组件,还让我们知道了怎么在除了第一次请求之外,用 react-router 来在客户端处理路由的跳转,减少请求,不仅可以减少等待时间,还可以减轻服务器端的负担,带来更好的用户体验 继续阅读 »
2020-10-29 Robin Wen
文/Robin 2020 年 10 月 21 日,PayPal 在声明中表示,将推出一项新服务允许用户能够直接从 PayPal 账户中购买、出售以及持有加密货币,也将允许用户使用加密货币在平台 2600 万商户处进行购物结算。未来几周内该服务将面向美国 PayPal 账户持有者开放,上线初期将支持 BTC、ETH、BCH 以及 LTC 四种加密货币。 2020 年 10 月 29 日,PayPal 正式向 C 端用户推出了购买加密货币的功能。笔者也登陆了自己的美区 PayPal 账号,发现确实也有 Crypto 的入口。Crypto 首页展示了 BTC、ETH、BCH、LTC 4 个币种,点击 BTC 进去会有价格走势图,以 继续阅读 »
2020-07-26 Robin Wen
文/Robin 知识库又叫做 Knowledge Base,简称 KB,这个缩写在微软系列产品中最为常见。本文想聊聊笔者构建 Knowledge Base 都用到哪些工具,以及关于知识库的一些思考。 知识库 构建知识库对于个人而言是一件非常重要但是经常被忽略的事情。一方面,有体系的知识库方便搜索,节省时间;另一方面,知识库记录的是个人的学习、思考、成长,是一种非常有价值的沉淀。笔者对知识库软件的要求如下: 支持 Markdown; 中文搜索友好; 文档有历史版本功能; 多端同步。 很显然以上几点就抛弃了大部分软件。笔者接下来讲讲对于知识库的软件选择都是怎么演变的。 印象笔记 印象笔记是 Evernote 的本地化版本 继续阅读 »
2018-10-08 Piasy
Janus Gateway 支持 server 端录制,保存的文件格式是对 RTP 报文的一种自定义封装格式(MJR),音视频数据单独存储,官方提供了一个 janus-pp-rec 的程序,可以把 MJR 格式的文件转换为其他封装格式的文件,然后我们可以利用 ffmpeg 把音视频文件合并为一个文件,命令如下(以 H.264 和 OPUS 编码为例): 继续阅读 »
2016-09-19 曹强
将近20年前,Javascript诞生的时候,只是一种简单的网页脚本语言。如果你忘了填写用户名,它就跳出一个警告。 如今,它变得几乎无所不能,从前端到后端,有着各种匪夷所思的用途。程序员用它完成越来越庞大的项目。 Javascript代码的复杂度也直线上升。单个网页包含10000行Javascript代码,早就司空见惯。2010年,一个工程师透露,Gmail的代码长度是443000行! 编写和维护如此复杂的代码,必须使用模块化策略。目前,业界的主流做法是采用"面向对象编程"。因此,Javascript如何实现面向对象编程,就成了一个热门课题。 麻烦的是,Javascipt语法不支持"类"(class),导致传统的面向 继续阅读 »
2017-12-12 Eric Wang
Lucene 事务 有过数据库经验的人都知道ACID特性,原子性(atomicity,或称不可分割性)、一致性(consistency)、隔离性(isolation,又称独立性)、持久性(durability)。由于隔离性的存在,对于新的变更包括添加、修改、删除,如果不进行 commit 的话,那么在读端是无法看到数据的变化的,在这里简单的介绍下 Lucene 中的事务,即ACID。 原子性 当你在一次 IndexWriter 的 session 中做操作(增加,删除文档),然后 commit,要么你的所有的操作修改都是可见的(commit 成功),要么所有的操作修改都不可见(commit 失败),绝不会处于某种中间状态。有些 继续阅读 »
2020-10-08 Robin Wen
文/Robin 2020 年 10 月 7 日,ConsenSys 宣布推出 MetaMask Swaps,该功能允许用户基于 MetaMask 直接比较和兑换代币,并集成了多个聚合应用(例如 Uniswap、Airswap、Kyber、0xAPI、1inch.exchange、dex.ag、Paraswap、Totle 和私有做市商),可在多个去中心化的流动性来源中获取报价,允许用户访问 DeFi 生态系统中最深流动性的交易对,以确保用户以最优价格进行代币交易。最初该功能仅限于 Firefox 浏览器上的 MetaMask 扩展,将很快支持其他浏览器和 MetaMask 移动端。 笔者去 Firefox 浏览器上的 Met 继续阅读 »
2018-04-02 geekspeng
lsof -i:端口号 用于查看某一端口的占用情况 bash [root@node1 ~]# lsof -i:22 COMMAND   PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME sshd     6622 root    3u  IPv4  36215      0t0  TCP *:ssh (LISTEN) sshd     6622 root    4u  IPv6  36224      0t0  TCP *:ssh (LISTEN) sshd    31358 root    3u  IPv4 122192      0t0  TCP node1:ssh->192.168. 继续阅读 »