c*******v 发帖数: 2599 | 1 golang build出来的文件有点大。你有什么dirty trick可以减小size吗?
我的build command是:
go build -ldflags "-s -w"
ref:
https://blog.filippo.io/shrink-your-go-binaries-with-this-one-weird-trick/ |
T********i 发帖数: 2416 | 2 这个真的没研究过。
我就是一用户,千万不要把我当专家。golang代码写了几万行,语法还没学全呢。
以后有空,倒是可以讲讲我的架构。如何AWS一个每月$5的instance,能够服务上百万
用户上千万的IoT设备。估计这个你不会特别感兴趣。 |
n******t 发帖数: 4406 | 3 golang本質上也是編譯+鏈接的代碼生成過程。
所謂-s 就是去掉symbol,實際上你如果生成了binary xxx在用strip xxx,結果是一樣
的。
【在 c*******v 的大作中提到】 : golang build出来的文件有点大。你有什么dirty trick可以减小size吗? : 我的build command是: : go build -ldflags "-s -w" : ref: : https://blog.filippo.io/shrink-your-go-binaries-with-this-one-weird-trick/
|
c*******v 发帖数: 2599 | 4 我肯定不会自己整aws或者cloud相关的代码,公司这方面的人有不少。不过我感兴趣这
个topic啊。
回头有空你讲讲你的架构吧。thanks in advance。
【在 T********i 的大作中提到】 : 这个真的没研究过。 : 我就是一用户,千万不要把我当专家。golang代码写了几万行,语法还没学全呢。 : 以后有空,倒是可以讲讲我的架构。如何AWS一个每月$5的instance,能够服务上百万 : 用户上千万的IoT设备。估计这个你不会特别感兴趣。
|
c*******v 发帖数: 2599 | 5 Any other tricks?
will gccgo be helpful?
【在 n******t 的大作中提到】 : golang本質上也是編譯+鏈接的代碼生成過程。 : 所謂-s 就是去掉symbol,實際上你如果生成了binary xxx在用strip xxx,結果是一樣 : 的。
|
T********i 发帖数: 2416 | 6 但凡随便扫一眼老顾的帖子里面的链接:
make binaries self-decompress at runtime
都不会下这种不负责任的论断。
人不能啥都懂。不懂是OK的。
: golang本質上也是編譯 鏈接的代碼生成過程。
: 所謂-s 就是去掉symbol,實際上你如果生成了binary xxx在用strip xxx,結果
是一樣
: 的。
【在 n******t 的大作中提到】 : golang本質上也是編譯+鏈接的代碼生成過程。 : 所謂-s 就是去掉symbol,實際上你如果生成了binary xxx在用strip xxx,結果是一樣 : 的。
|
x****u 发帖数: 44466 | 7 你的server和redis哪个更快?
【在 T********i 的大作中提到】 : 这个真的没研究过。 : 我就是一用户,千万不要把我当专家。golang代码写了几万行,语法还没学全呢。 : 以后有空,倒是可以讲讲我的架构。如何AWS一个每月$5的instance,能够服务上百万 : 用户上千万的IoT设备。估计这个你不会特别感兴趣。
|
c*******v 发帖数: 2599 | 8 功能不同的东西,都是网上跑的client/server,你觉得就是可以比较速度的?
你这个问题非常的不求甚解。
老魏的项目不是in memory的key/value,
另外redis除了key/value还有pub/sub,lock等好多功能。比哪一项呢
【在 x****u 的大作中提到】 : 你的server和redis哪个更快?
|
x****u 发帖数: 44466 | 9 亚麻5块的instance跑redis都略显吃力,所以才要问
[在 chebyshev (......) 的大作中提到:]
:功能不同的东西,都是网上跑的client/server,你觉得就是可以比较速度的?
:你这个问题非常的不求甚解。
:老魏的项目不是in memory的key/value,
:另外redis除了key/value还有pub/sub,lock等好多功能。比哪一项呢 |
n******t 发帖数: 4406 | 10 不要激動,我的point,僅僅是想說那篇文章裏裏面說的辦法和golang其實都沒有太大
的關係,有什麼問題麼?不管是symbol striping,還是upx都是對elf executable適用
的縮小可執行文件大小的辦法。我沒有去評論upx的做法因爲這個改變了初始loading的
時間,一般情況下不適用。
此外,不要假定別人都不讀別人的文章,也不要假定別人什麼都不懂。upx這東西我10
幾年前還經常用,至於用來幹什麼,一般不是爲了壓縮可執行文件大小,而是爲了防止
反匯編。
【在 T********i 的大作中提到】 : 但凡随便扫一眼老顾的帖子里面的链接: : make binaries self-decompress at runtime : 都不会下这种不负责任的论断。 : 人不能啥都懂。不懂是OK的。 : : : golang本質上也是編譯 鏈接的代碼生成過程。 : : 所謂-s 就是去掉symbol,實際上你如果生成了binary xxx在用strip xxx,結果 : 是一樣 : : 的。 :
|
n******t 发帖数: 4406 | 11 一般來說可以考慮找一個嵌入式的c library,比如說musl之類的。這樣會變小。
這種事情看你想小到什麼程度了。
go用靜態編譯所以執行文件一般來說不會很小。gccgo我不認爲在文件大小上會有本質
的區別。
【在 c*******v 的大作中提到】 : Any other tricks? : will gccgo be helpful?
|
T********i 发帖数: 2416 | 12 人家问golang的问题,就回答golang好了。我没研究i过,就直接承认自己不懂。
其实golang是不是内嵌symbol,有没有自带代码压缩,我都不知道。看了那篇blog才知
道。估计也就这样了。
至于嵌入式libc,那是C好不好?和golang有什么关系呢?人家问golang编译代码大小
,没问C代码,也没问是不是嵌入。
10
【在 n******t 的大作中提到】 : 不要激動,我的point,僅僅是想說那篇文章裏裏面說的辦法和golang其實都沒有太大 : 的關係,有什麼問題麼?不管是symbol striping,還是upx都是對elf executable適用 : 的縮小可執行文件大小的辦法。我沒有去評論upx的做法因爲這個改變了初始loading的 : 時間,一般情況下不適用。 : 此外,不要假定別人都不讀別人的文章,也不要假定別人什麼都不懂。upx這東西我10 : 幾年前還經常用,至於用來幹什麼,一般不是爲了壓縮可執行文件大小,而是爲了防止 : 反匯編。
|
n******t 发帖数: 4406 | 13 同學,不要被個人矛盾衝昏了頭腦,本來就是個技術話題,一定要找點事情來招架吵,
沒必要。
否則最後你就只能重複我的觀點,外加加上一些我沒說的話來找事,這個我真沒興趣。
太大
適用
loading的
防止
【在 T********i 的大作中提到】 : 人家问golang的问题,就回答golang好了。我没研究i过,就直接承认自己不懂。 : 其实golang是不是内嵌symbol,有没有自带代码压缩,我都不知道。看了那篇blog才知 : 道。估计也就这样了。 : 至于嵌入式libc,那是C好不好?和golang有什么关系呢?人家问golang编译代码大小 : ,没问C代码,也没问是不是嵌入。 : : 10
|