V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  heguangyu5  ›  全部回复第 5 页 / 共 6 页
回复总数  110
1  2  3  4  5  6  
2022-06-07 17:10:44 +08:00
回复了 heguangyu5 创建的主题 PHP PHP 编译器 BPC 新里程碑达成: 可以编译 web 应用了!
@keepeye
swoole compiler 和 ionCube 以及一楼在做的产品是一类的.
bpc 和 kphp(将 php 编译为 C++) peachpie(将 php 编译为 C#)是一类的.
2022-06-07 17:06:25 +08:00
回复了 heguangyu5 创建的主题 PHP PHP 编译器 BPC 新里程碑达成: 可以编译 web 应用了!
@brader 你说的 nginx+php 应该是 nginx+php-fpm,别人的 apache+php 是 apache+mod_php,确实应该没人搞套娃的 nginx+apache+php-fpm,不过应该有人用 nginx+apache+mod_php

我现在做的是 apache+mod_bpc,如果我后边也搞一个 fastcgi-bpc 的话,那就可以 nginx+fastcgi-bpc 了
2022-06-07 16:29:36 +08:00
回复了 heguangyu5 创建的主题 PHP PHP 编译器 BPC 新里程碑达成: 可以编译 web 应用了!
@microxiaoxiao 实际上代码保护是个通用的问题,不止 php,java 和 C#这类基于中间码的语言都有代码保护的需求,java 有 graalvm,C#好像也有 Native AOT.
2022-06-07 16:20:49 +08:00
回复了 heguangyu5 创建的主题 PHP PHP 编译器 BPC 新里程碑达成: 可以编译 web 应用了!
@brader nginx 的后边是 php-fpm 或者 apache,你不是搞 php 的吧
2022-06-07 14:14:04 +08:00
回复了 heguangyu5 创建的主题 PHP PHP 编译器 BPC 新里程碑达成: 可以编译 web 应用了!
@CodeCodeStudy 出发点是为了保护源码,但做下来之后,发现还能解决一些其它问题,比如软件授权,扩展开发等.
2022-06-07 14:09:13 +08:00
回复了 heguangyu5 创建的主题 PHP PHP 编译器 BPC 新里程碑达成: 可以编译 web 应用了!
@rekulas 我想你肯定知道 opcode 是可以反编译的,基于 opcode 就要做好和相关从业人员斗智斗勇的准备.我们没那个精力,所以没走那条路.
2022-02-26 16:49:08 +08:00
回复了 heguangyu5 创建的主题 PHP PHP 编译器 BPC 的第一个成功案例来了!
@littleylv 欢迎你在我支持了 namespace traits 后再来关注

不管怎么说,能按自己的喜好做事,真的很棒! 这得感谢云招 OurATS 宽松自由的环境和给力的同事!
2022-02-25 18:51:24 +08:00
回复了 heguangyu5 创建的主题 PHP PHP 编译器 BPC 的第一个成功案例来了!
@xumng123 万里长城第一步,你看微软做的 peachpie strlen 返回值还不对呢,俄罗斯做的 kphp 还不支持 calling by name 呢.
2022-02-25 16:17:48 +08:00
回复了 heguangyu5 创建的主题 PHP PHP 编译器 BPC 的第一个成功案例来了!
@mrgeneral

1. namespace 个人不喜欢,用的也不多,真的用到的地方可以调整成不用 namespace 的,个人更偏好 A_B_C 这种全名的.
2. 匿名函数是支持的,但是不支持 use 语法.这个是因为没花时间去看到底该怎么支持.
3. generators,traits 我们自己的项目没有用到.

这个项目当前还处在很早期,看实际需求,也许后边会支持这些特性.
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 创建的主题 程序员 业务代码每行都需要单元测试覆盖吗?
如果你把测试覆盖率当作开发者的辅助工具,而不是考核指标的话,这事就好办了。
1  2  3  4  5  6  
关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   2852 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 37ms · UTC 14:21 · PVG 22:21 · LAX 06:21 · JFK 09:21
♥ Do have faith in what you're doing.