暂不分类,统一记录

区块链

区块链是一种分布式数据库,是一串使用密码学方法相关联产生的数据块,每个数据块都包含了一次网络交易信息,用于验证其信息的有效性(每个区块都含有其上一个区块的哈希值,确保区块按照时间顺序连接的同时没有被篡改)

1、去中心化

这是区块链颠覆性特点,不存在任何中心机构和中心服务器,所有交易都发生在每个人电脑或手机上安装的客户端应用程序中。

2、开放性

区块链可以理解为一种公共记账的技术方案,系统是完全开放透明的,账簿对所有人公开,实现数据共享,任何人都可以查账。

3、不可撤销、不可篡改和加密安全性

区块链采取单向哈希算法,每个新产生的区块严格按照时间线形顺序推进,时间的不可逆性、不可撤销导致任何试图入侵篡改区块链内数据信息的行为易被追溯,导致被其他节点的排斥,造假成本极高,从而可以限制相关不法行为。

什么是CDN

CDN就是采用更多的缓存服务器(CDN边缘节点),布放在用户访问相对集中的地区或网络中。当用户访问网站时,利用全局负载技术,将用户的访问指向距离最近的缓存服务器上,由缓存服务器响应用户请求。

(CDN这个技术其实说起来并不复杂,最初的核心理念,就是将内容缓存在终端用户附近)
(内容源不是远么?那么,我们就在靠近用户的地方,建一个缓存服务器,把远端的内容,复制一份,放在这里,不就OK了)

如果某个用户想要访问优酷的视频点播内容,步骤如下:

①、当用户点击APP上的内容,APP会根据URL地址去本地DNS(域名解析系统)寻求IP地址解析。

②、本地DNS系统会将域名的解析权交给CDN专用DNS服务器。

③、CDN专用DNS服务器,将CDN的全局负载均衡设备IP地址返回用户。

④、用户向CDN的负载均衡设备发起内容URL访问请求。

⑤、CDN负载均衡设备根据用户IP地址,以及用户请求的内容URL,选择一台用户所属区域的缓存服务器。

⑥、负载均衡设备告诉用户这台缓存服务器的IP地址,让用户向所选择的缓存服务器发起请求。

⑦、用户向缓存服务器发起请求,缓存服务器响应用户请求,将用户所需内容传送到用户终端。

⑧、如果这台缓存服务器上并没有用户想要的内容,那么这台缓存服务器就要网站的源服务器请求内容。

⑨、源服务器返回内容给缓存服务器,缓存服务器发给用户,并根据用户自定义的缓存策略,判断要不要把内容缓存到缓存服务器上。

镜像服务器和CDN的区别

镜像服务器是源内容服务器的完整复制。而CDN,是部分内容的缓存,智能程度更高。
确切地说,CDN=更智能的镜像+缓存+流量导流。

CDN可以缓存的内容

1、小文件:html、js、css、img等
2、大文件:apk、rar等
3、短视频文件:MP4、等
4、为直播提供服务

CDN的好处

1、采用CDN技术,最大的好处,就是加速了网站的访问——用户与内容之间的物理距离缩短,用户的等待时间也得以缩短。
2、分发至不同线路的缓存服务器,也让跨运营商之间的访问得以加速。例如中国移动手机用户访问中国电信网络的内容源,可以通过在中国移动假设CDN服务器,进行加速。效果是非常明显的。
3、CDN还有安全方面的好处。内容进行分发后,源服务器的IP被隐藏,受到攻击的概率会大幅下降。而且,当某个服务器故障时,系统会调用临近的健康服务器,进行服务,避免对用户造成影响。

云计算中心
由一个核心云计算中心,对所有终端节点提供服务。

对于非常大的面积区域,非常多的用户数量,尤其是国家级或世界级的服务,不管你把这个中心设在哪里,也不管你这个中心的能力有多强大,都无法克服物理距离上的障碍,会导致无法忍受的延时和网络拥塞。

于是乎,人们就开始把云计算中心进行部分“下沉”,这才有了雾计算、霾计算。甚至人们开始质疑,集中式计算是否会最终被分布式计算所取代

设计API

1、风格统一 /v1/product/get(版本、业务模块、操作)
2、职责单一 /v1/product/get(只做product的信息获取,参数可以有id、name等,可加排序等)
3、添加版本 /v1/product/get(v1即是版本,当接口需要升级时,可开发V2版,使v1、v2共存)
4、调用方便
5、返回数据格式统一
6、定义返回码
7、考虑扩展、向后兼容
8、并发量、防攻击、跨域?
9、定义api界限(是否需要验证)
10、协议规范http、https?
11、请求方式get、post、put、delete

HASH算法

1、相关概念

(1)key(关键字)
(2)哈希算法(函数f,通过f(key)可以直接计算出存储位置)
(3)哈希表(也叫散列表,一块连续的存储空间)
(4)散列地址(连续存储空间的一部分)

2、采用散列技术将记录存储在一块连续的存储空间中

散列技术(也叫哈希算法),是一种新的存储技术,可以通过查找关键字(不需要一个一个比较)就可获得需要的记录的存储位置
这块连续存储空间称为散列表或哈希表(Hash table)。
关键字对应的记录存储位置我们称为散列地址。

散列技术是在记录的存储位置和它的关键字之间建立一个确定的对应关系f,使得每个关键字key 对应一个存储位置f (key)。

哈希算法存取之所以快,是因为其 直接通过关键字key得到要存取的记录内存存储位置

posted @ 2019-07-15 11:30  马崮蚂蚁哥  阅读(164)  评论(0编辑  收藏  举报