《图解HTTP》笔记——Web 基础

Web 基础 三项构建技术: HTML:页面的文本标记语言 HTTP:文档传输协议 URL:指定文档所在地址 一些概念 HTTP(HyperText Transfer Protocol):通常被译为“超文本传输协议”,但严谨应译为“超文本转移协议” 传输(transport):从端到端可靠地搬运比特,属于 TCP/IP 中传输层(transport layer)协议处理的事 转移(transfer):在客户端-服务器之间转移一些带有操作语义的原语,来执行某些操作,属于TCP/IP中应用层的事务。 HTTP 版本 HTTP/0.9:并没有作为正式标准被建立 HTTP/1.0:公布于 1996 年 5 月,记录于 RFC1945 HTTP/1.1:公布于 1997 年 1 月,最初标准为 RFC 2068,后来发布修订版 RFC2616,目前主流被使用的版本 HTTP/2.0 TCP/IP 协议族 应用层 (FTP、DNS、HTTP…) 传输层 用于提供处于网络连接中的两台计算机之间的数据传输(TCP、UDP) 网络层 用来处理在网络上流动的数据包(IP) 数据链路层 用来处理连接网络的硬件部分 HTTP over TCP/IP 通信传输图解:...

December 3, 2017 · Zi WANG

PostgreSQL 满足条件时插入数据

例如:当表中不存在某记录时,才插入这条记录。 INSERT INTO 表名(列名1, 列名2) SELECT '值1', '值2' WHERE NOT EXISTS ( SELECT * FROM 表名 WHERE 列名1 = '值1', 列名2 = '值2' ); 参考 PostgreSQL: Documentation: 10: INSERT This example inserts some rows into table films from a table tmp_films with the same column layout as films: INSERT INTO films SELECT * FROM tmp_films WHERE date_prod < '2004-05-07'; database - Conditional INSERT INTO statement in postgres - Stack Overflow...

November 23, 2017 · Zi WANG

【Redis 笔记】常用命令

编号 命令 描述 1 DEL key 此命令删除一个指定键(如果存在)。 2 DUMP key 此命令返回存储在指定键的值的序列化版本。 3 EXISTS key 此命令检查键是否存在。 4 EXPIRE key seconds 设置键在指定时间秒数之后到期/过期。 5 EXPIREAT key timestamp 设置在指定时间戳之后键到期/过期。这里的时间是Unix时间戳格式。 6 PEXPIRE key milliseconds 设置键的到期时间(以毫秒为单位)。 7 PEXPIREAT key milliseconds-timestamp 以Unix时间戳形式来设置键的到期时间(以毫秒为单位)。 8 KEYS pattern 查找与指定模式匹配的所有键。 9 MOVE key db 将键移动到另一个数据库。 10 PERSIST key 删除指定键的过期时间,得永生。 11 PTTL key 获取键的剩余到期时间(以毫秒为单位)。 12 RANDOMKEY 从Redis返回一个随机的键。 13 RENAME key newkey 更改键的名称。 14 RENAMENX key newkey 如果新键不存在,重命名键。 15 TYPE key 返回存储在键中的值的数据类型。

November 21, 2017 · Zi WANG

【Redis 笔记】数据类型

REmote DIctionary Server(Redis),一个 key-value 存储系统。 数据类型 Redis 支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。 string string 类型是二进制安全的。意思是 redis 的 string 可以包含任何数据。比如 jpg 图片或者序列化的对象。 string 类型是 Redis 最基本的数据类型,一个键最大能存储 512MB。 相关命令:set, get 127.0.0.1:6379> set str1 hello OK 127.0.0.1:6379> get str1 "hello" hash hash 是键值对的集合。 每个 hash 可以存储 2^32 - 1 个(超过 40 亿个)键值对。 相关命令:hmset, hmget, hgetall 127.0.0.1:6379> hmset hashmap1 name hiwangzi blog hiwangzi.com OK 127.0.0.1:6379> hmget hashmap1 name 1) "hiwangzi" 127....

November 21, 2017 · Zi WANG

命令行计算 RSA, Base64, Hash

OpenSSL 是个好工具 👍

November 20, 2017 · Zi WANG

如此

抑制偏见,拥抱世界。 — Zi WANG (@zill057) October 29, 2017 有了记录之后,仍然会觉得,时间眨眼飞逝。 去年的今天,写下了 我的十月 这篇博文,再读来,真的觉得当时的自己的生活还算称得上有趣啦。也许就如花花所说,我一直在粉饰自己过去的时光,所以才总是会觉得现在的自己真是大不如从前。 人虽然总是在变化,可变化有时却没那么快。或许未来的自己会觉得今天的我也并非充足的努力,可此刻的我还是愿意鼓励自我的现状。或许没有去年的十月那么多值得记录的事情,但我知道,自己在踏实的前进。 没有什么更多的事说了,如此…

October 31, 2017 · Zi WANG

全栈框架——MEAN

MEAN: MongoDB - Express - AngularJs - Node.js MongoDB 是一个面向文档的、 NoSQL 类型的数据库。MongoDB 颠覆了传统的基于表的数据存储方式,而采取了类似 JSON 的文档结构来存储数据,因而它在存储数据时可以更加灵活。 Express 是一个 Node.js 框架,可以创建灵活的 Web 服务,比如单页面应用程序、多页面应用程序和混合型 App。 AngularJS 是一个开源的 JavaScript 框架,由 Google 和开源社区共同维护,它用来创建单页面应用程序。它的目标是使用 model-view-controller 模式来规范 Web 应用程序,让开发和测试富交互的单页面应用程序变得更加轻松。 Node.js 是一个运行在服务器端的 JavaScript 运行环境,它的底层是基于 Chrome 的 JavaScript 运行环境——V8 引擎。Node.js 可以作为服务器端语言,用来创建快速、可扩展的应用程序。Node.js 也可以在本机运行,做一些本地操作,比如加速本地开发流程,或者实现一键发布。 MEAN 可以说是传统的 LAMP 方案的有力竞争者。因为从服务器端到页面端都采用同样的语言(JavaScript)和同样的架构模式(MVC),所以一个擅长 JavaScript 的工程师可以兼顾前后端的开发,并且前端代码和后台代码是可以复用的。

October 25, 2017 · Zi WANG

(转载) IaaS, PaaS, Saas

如果你是一个网站站长,想要建立一个网站。不采用云服务,你所需要的投入大概是:买服务器,安装服务器软件,编写网站程序。 现在你追随潮流,采用流行的云计算,如果你采用 IaaS 服务,那么意味着你就不用自己买服务器了,随便在哪家购买虚拟机,但是还是需要自己装服务器软件 而如果你采用 PaaS 的服务,那么意味着你既不需要买服务器,也不需要自己装服务器软件,只需要自己开发网站程序 如果你再进一步,购买某些在线论坛或者在线网店的服务,这意味着你也不用自己开发网站程序,只需要使用它们开发好的程序,而且他们会负责程序的升级、维护、增加服务器等,而你只需要专心运营即可,此即为 SaaS 。 作者:John Wang 链接:https://www.zhihu.com/question/20387284/answer/28514161 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

October 25, 2017 · Zi WANG