V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  heguangyu5  ›  全部回复第 5 页 / 共 6 页
回复总数  101
1  2  3  4  5  6  
2022-02-25 15:29:01 +08:00
回复了 heguangyu5 创建的主题 PHP PHP 编译器 BPC 的第一个成功案例来了!
@0o0O0o0O0o 简历解析是个很成熟的软件了,有好几家在做.你可以了解一下他们的部署下来是多大,650M 已经很小了,我见过好几个 G 的呢.
2022-02-25 14:28:08 +08:00
回复了 heguangyu5 创建的主题 PHP PHP 编译器 BPC 的第一个成功案例来了!
@watcher 需求本身就是自己的,先满足自己再说.

至于落地,至少在云招已经落地了,线上在跑的简历解析已经不是 php 了,而是 BPC 编译后的可执行文件.
可以看看我的这个 https://www.v2ex.com/t/826154

被网友称为"玩具"

这个"玩具"(BPC)兼容 PHP,也就是说,同样的 PHP 代码,用 php 执行出来的结果和 BPC 编译执行出来的结果是一样的.如果当作黑盒子用的话,我不说是 BPC,一般情况下外部来看就是 PHP.

虽然我是走编译成二进制的路子,但是也可以做成解释执行的,只不过解释执行对我没用,就没做.

具体实现思路的话,首先要实现一个要兼容的语言的核心或者说 runtime,这个核心保证了你的解释器和那个语言的行为是一致的,比如拿 PHP 来说,两个 int 相加,如果溢出了,就返回 float 而不是溢出,那么你的 runtime 里就要对加法这样来实现.
然后再定义 /实现一个添加扩展函数或类的机制,来在 runtime 之外增加你需要的 user 及 user.transfer()

再接下来就是 lexer parser 那一套了,解析脚本在做什么,调用 runtime 和扩展函数执行给出结果.
2022-01-04 09:03:39 +08:00
回复了 yaleyu 创建的主题 Linux 求个 mdadm 非邮件方式发送告警的办法
man mdadm

...

MONITOR MODE

...

When passing events to a program, the program is run once for each event, and is given 2 or 3 command-line
arguments: the first is the name of the event (see below), the second is the name of the md device which is
affected, and the third is the name of a related device if relevant (such as a component device that has
failed).
2021-11-04 09:41:52 +08:00
回复了 rykinia 创建的主题 问与答 一亿个图片和 pdf 文件,单机,只新增不删除,怎么管理?
有个 lib 叫 LMDB, http://www.lmdb.tech/doc/
基于 LMDB 有个项目叫 memcachedb, https://github.com/LMDB/memcachedb
可以对 memcachedb 做下改造,新增加一个 mmap 的巨大文件(当然要控制一下这个文件占用的 file cache 大小),然后把图片和 pdf 文件保存到这个大文件里,然后将 offset 保存到 memcachedb 的 LMDB 文件里,再让 LMDB 文件始终都在内存里.
这样文件的查找和新增都是在操作内存中的 LMDB,文件的写入和读取都是基于 mmap,只要内存稍大一点,应该就不是问题了.
2021-10-11 17:32:51 +08:00
回复了 taobibi 创建的主题 问与答 几千万个图片零散文件,如何从旧式 FTP 存储下面迁移下来?
2021-06-03 09:39:05 +08:00
回复了 FenixVu 创建的主题 Linux 百万数量级小文件迁移怎么做?
机械硬盘的话试试这个 https://github.com/heguangyu5/qtar

原理就是先给要 copy 的文件排序,让接下来 tar 读取文件时尽可能少地移动磁头什么的,时间有点久记不清楚了.

我们用这个工具迁移了千万数量级小文件,比简单的 cp 什么地快很多.
2021-03-23 16:04:42 +08:00
回复了 heguangyu5 创建的主题 Chrome 分享一次替 Boss 直聘企业端 Debug 的经历
@Jat001 恐怕 chrome 不会背这个锅,这个特性看 commit log 已经有 10 来年了. 显然前端程序得适应 chrome,而不是反过来.
mmap 要写入的文件,然后 align 要写入的地址,然后 memcpy.

类似这样:

fd = open()
addr = mmap()
ptr = addr + offset
ptr = align()
memcpy(ptr, &int_var, sizeof(int))
2020-08-01 12:08:47 +08:00
回复了 iwukong 创建的主题 程序员 有什么办法将 PDF 里的报表抓取出来,整理成 excel 的
mupdf +1

mupdf 是个 c 库,还有很不错的文档,自身还带了几个实用工具,做格式转换、文字、图片、字体提取都很好用。
2020-07-31 11:52:19 +08:00
回复了 weo0 创建的主题 程序员 业务代码每行都需要单元测试覆盖吗?
如果你把测试覆盖率当作开发者的辅助工具,而不是考核指标的话,这事就好办了。
2020-07-29 23:55:40 +08:00
回复了 heguangyu5 创建的主题 PHP 为什么说 PHP 单元测试落地很难之运行速度
@realpg 这么说倒是有点推广的意思,不过我也过了问问题的年纪,还是分享多一些,自觉没价值的文章也不往这上边发。
2020-07-29 23:17:05 +08:00
回复了 heguangyu5 创建的主题 PHP 为什么说 PHP 单元测试落地很难之运行速度
@KasuganoSoras 是我的原创文章,v2 的编辑器写起文章来有点费劲
2020-07-28 09:29:08 +08:00
回复了 newbeelity 创建的主题 程序员 9.9 元的 ChatOps 课程,被抽走一半还多
@newbeelity 我最近写了个电子书,找了一圏,最后发到了一个叫面包多的平台上,平台抽 5 %,微信渠道费 1 %。
2020-07-13 15:56:33 +08:00
回复了 fiypig 创建的主题 程序员 学历问题...
我是做招聘系统开发的,在初筛阶段我们系统提供 逐份筛选 和 批量 /条件筛选 .看到这个问题,到后台统计了一下近半年来 HR 使用 批量 /条件筛选 功能时各个搜索条件使用的情况.
确实学历是 HR 特别关注的,按使用次数排的非常靠前,接下来的条件是年龄,性别,工作年限,是否专升本,然后才是学校.
2020-07-08 13:51:06 +08:00
回复了 heguangyu5 创建的主题 PHP 还不会用 Wireshark 抓 https 包的进来看看
@NewIPIsComing 这个帖子的后续和 php 相关了,感兴趣可以看下
2020-07-08 13:49:29 +08:00
回复了 heguangyu5 创建的主题 PHP 还不会用 Wireshark 抓 https 包的进来看看
2020-07-08 13:48:49 +08:00
回复了 heguangyu5 创建的主题 PHP 还不会用 Wireshark 抓 https 包的进来看看
@pwrliang 新文章写好了,可以抓取动态链接了 libssl.so 的程序发出的请求,不知道对你有没有用.
2020-07-07 17:39:28 +08:00
回复了 heguangyu5 创建的主题 PHP 还不会用 Wireshark 抓 https 包的进来看看
@anyclue
@Keyes 关键在演示 https 抓包,关键词竞价公司商务会处理,我也管不了呀
2020-07-07 17:36:43 +08:00
回复了 heguangyu5 创建的主题 PHP 还不会用 Wireshark 抓 https 包的进来看看
@locoz linux 上用 tcpdump, wireshark 很直接,Fiddler 没用过
1  2  3  4  5  6  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1381 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 26ms · UTC 17:33 · PVG 01:33 · LAX 09:33 · JFK 12:33
Developed with CodeLauncher
♥ Do have faith in what you're doing.