V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
paw
V2EX  ›  Linux

是不是oneasiahost的openvz VPS限制单进程最大虚拟内存数了?

  •  
  •   paw · 2013-11-18 21:05:28 +08:00 · 3160 次点击
    这是一个创建于 3826 天前的主题,其中的信息可能已经有所发展或是发生改变。
    最近入的oneasiahost最最低端的128内存的那种,就是为了挂shadowproxy
    打开2个以上的网页总是会断,ssh上发现是python进程报 无法创建线程 异常

    ulimit -v -s 结果如下
    virtual memory (kbytes, -v) unlimited
    stack size (kbytes, -s) 10240

    virtual memory没限制,栈大小10MB
    这样理论上能创建300+线程吧

    用如下代码测试
    #include <stdio.h>
    #include <pthread.h>
    void foo()
    {
    while(1)
    sleep(100);
    }
    int main()
    {
    int i = 0;
    pthread_t thread;

    while (1) {
    if (pthread_create(&thread, NULL, foo, NULL) != 0)
    break;
    i ++;
    }
    printf("i = %d\n", i);
    }

    结果是创建到23个线程就崩掉了。。。。
    尝试 ulimit -v 3145728 然后再跑测试 还是23个崩。。。ulimit修改VM限制完全没作用啊
    尝试 ulimit -s 2048 测试 119个崩。。。
    我擦了 这是明摆的限制单进程VM 只能在240MB左右了啊。。。


    当然ulimit -s 2048 这样能跑100+线程 估计shadowproxy完全够用了,但是,知道有个这种限制就是不爽。。。
    请问各位,这样有的限制有解封的可能吗,,,,,
    真不行我动手把shadowproxy改成多进程的去。。。。
    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   4047 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 05:14 · PVG 13:14 · LAX 22:14 · JFK 01:14
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.