Levon's Blog

微信: L6241425

1. TCP 粘包

粘包并不是 TCP 协议造成的,它的出现是因为应用层协议设计者对 TCP 协议的错误理解,忽略了 TCP 协议的定义并且缺乏设计应用层协议的经验。我们经常提到的 TCP 协议中的粘包是如何发生的:

  • TCP 协议是面向字节流的协议,它可能会组合或者拆分应用层协议的数据;
  • 应用层协议的没有定义消息的边界导致数据的接收方无法拼接数据;

TCP本来就是基于字节流而不是消息包的协议,会把你的数据变成字节流发到对面去,而且保证顺序不会乱,但是你要自己搞定字节流解析。

阅读全文 »

1. RPC 介绍

RPC,全称是 Remote Procedure Call(远程过程调用)。它的核心思想非常纯粹:让你调用另一台计算机上的函数(或方法),就像调用本地函数一样简单、自然,而无需关心底层复杂的网络通信细节。

1

阅读全文 »

目标:需要Dropbox同步代码文件,需要使用git管理代码,Dropbox不同步 .git 目录。

实现:项目对应的 .git 目录,放在不被Dropbox同步的其他目录。

阅读全文 »

1. 土区 Apple ID

1.1 注册

在 https://appleid.apple.com/ 上面注册,注册时地区选择土耳其,手机号用国内的手机号就可以。

地址生成器: https://www.addresscopy.com/Turkey

1.2 充值

充值的话在淘宝购买礼品卡或者一些第三方网站上购买都可以,我是用来订阅的,所以账号封了也无所谓。如果你想大量购买软件,请自行寻找安全的礼品卡购买渠道。可以先充值 25 里拉试一下能否消费再大量充值。

1.3 消费

土区因为汇率问题很多内购都比其他区便宜,以 Telegram 会员举例,美区 $4.99 ,土区 13.99 里拉,折合人民币 5 块多。但是 tg 会员只能冲到自己号上,赠送还是美区的价格。土区的各种会员都很便宜,可以自己探索或者上网搜索,但是国内的会员基本上没有土区特权。

阅读全文 »

macOS 下 Charles 抓包工具的破解、Chrome/手机 HTTPS 抓包配置,以及与 Wireshark 的原理对比

阅读全文 »

1. 函数依赖

1.1 函数依赖(有我就能决定你)

设X,Y是关系R的两个属性集合,当任何时刻R中的任意两个元组中的X属性值相同时,则它们的Y属性值也相同,则称X函数决定Y,或Y函数依赖于X。

  • 在一个表中, X的值确定的情况下,必定能确定属性Y的值, 这就是函数依赖名字的由来,类似于函数关系 y = f(x)
  • 姓名函数依赖于学号,写作 学号 → 姓名
  • 不能说学号函数依赖于姓名。姓名 不能决定学号, 因为有重名.
阅读全文 »

1. 文件存储单位

  • bit (比特 / 位):计算机中最小的数据单位,只能表示 0 或 1。可以想象成一个开关,要么开,要么关。英文缩写是小写 b
  • Byte (字节):计算机中最基本的存储和计量单位。它由 8 个比特组成。英文缩写是大写 B。 1 个大 B 等于 8 个 小 b。
    • b ⇒ bit (比特)
    • B ⇒ Byte (字节)
    • 1 B = 8 b
阅读全文 »
0%