忆向Blog

忆者:回忆者也,
向者:往昔者也,
忆向者:缅怀往昔铭心岁月也,
所有回不去的良辰美景,都是举世无双的好时光,
遂,我的博客取名为“忆向BLOG”!

最新推荐

C++模块     

深入剖析TB64avx2库原理

base64编码,即将一段二进制中,每6bits用一个字符表示,以将二进制转换成易读易传输的字符串。6bits正好对应64个字符,故为base64。

TB64avx2库,或者叫Turbo64avx2库,在github很容易找到,是借助于intel avx2指令集,实现base64的编码和解码,速度非常快,查表法通常已经是优化极限了,而使用SIMD指令的实现比查表法还要快8倍。

当前该库不支持url safe的base64编码和解码,故而『被迫』剖析其源码,以实现url safe的支持。

小注:何为url safe编码?标准base64使用的字符集为:... ...

 阅读全文»
Python模块     

cython编译程序支持VIRTUAL_ENV

在Linux上默认会有系统的python路径,例如:/usr/lib/python3.7/,python在查询库时,会先查PYTHONHOME环境变量,如果没找到包再查系统默认路径,所以通常下是不需要有PYTHONHOME,而virtualenv创建的各种python版本的环境,走的是VIRTUAL_ENV环境变量。总之,默认系统里是没有定义PYTHONHOME环境变量的。... ...

 阅读全文»
Ubuntu模块     

aws的s3迁移操作

有时候我们需要将aws的s3的一个bucket的数据迁移到另一个s3的bucket的,比如从亚洲迁移到美洲,从北美迁移南美之类,那么使用如下命令即可:... ...

 阅读全文»
杂文模块     

http range播放mp4流程

实测chrome和safari等浏览器,常规浏览器在播放mp4等流媒体时,跟服务端的交互过程如下:

第一次请求

浏览器也不知道服务端是否支持range请求,所以它会发送一个普通的http请求以获取整个视频文件。服务端如果真的不支持range协议,那就正常返回整个视频文件,Content-Length就是整个视频文件的字节数,此时浏览器端的播放器是不支持播放点切换的。... ...

 阅读全文»

回到顶部

首页 | 关于我 | 关于本站 | 站内留言 | rss
python logo   django logo   tornado logo