একটি Centos ভিপিএস উপর জাভা "হিপ বস্তুর জন্য পর্যাপ্ত স্থান সংরক্ষণ করতে পারে না।"


3
[root@lab ~]# java
Error occurred during initialization of VM
Could not reserve enough space for object heap
Could not create the Java virtual machine.

কোন ধারনা কিভাবে এটা ঠিক করতে হবে?

[root@lab ~]# uname -a
Linux lab 2.6.18-194.8.1.el5.028stab070.5 #1 SMP Fri Sep 17 19:10:36 MSD 2010 x86_64 x86_64 x86_64 GNU/Linux

এখানে কিছু অতিরিক্ত বিশদ যা সম্ভবত বেশ গুরুত্বপূর্ণ, এটি একটি openvz vps

[root@lab /]# free -m
             total       used       free     shared    buffers     cached
Mem:           384         27        356          0          0          0
-/+ buffers/cache:         27        356
Swap:            0          0          0

আমি জেভিএম লোড করতে পারি যদি আমি সর্বোচ্চ মেমরি 100 বা তার কম সেট করে রাখি, তবে আমার কি 300 এমবি পাওয়া উচিত নয়?

[root@thehacklab /]# java -Xms32M -Xmx100M -version
java version "1.6.0_0"
OpenJDK Runtime Environment (IcedTea6 1.6) (rhel-1.13.b16.el5-x86_64)
OpenJDK 64-Bit Server VM (build 14.0-b16, mixed mode)
[root@thehacklab /]# java -Xms32M -Xmx128M -version
Error occurred during initialization of VM
java.lang.OutOfMemoryError: unable to create new native thread
        at java.lang.Thread.start0(Native Method)
        at java.lang.Thread.start(Thread.java:614)
        at java.lang.ref.Finalizer.<clinit>(Finalizer.java:194)

[root@thehacklab /]# java -Xms32M -Xmx140M -version
Error occurred during initialization of VM
Could not reserve enough space for object heap
Could not create the Java virtual machine.

এছাড়াও, আমি জাভা চালানোর সময় ব্যক্তিগতভঙ্গিগুলি প্রতিফলিত পাল্টা বৃদ্ধিগুলিকে লক্ষ্য করেছি তাই সম্ভবত এটি হ'ল এটির সীমাবদ্ধতা হ'ল:

[root@thehacklab /]# cat /proc/user_beancounters
Version: 2.5
       uid  resource                     held              maxheld              barrier                limit              failcnt
    10913:  kmemsize                  4349290              6173197           2147483646           2147483646                    0
            lockedpages                     0                    0               999999               999999                    0
            privvmpages                  7198                98262                98304                98304                   35
            shmpages                      671                 1647                98304                98304                    0
            dummy                           0                    0                    0                    0                    0
            numproc                        16                   33               999999               999999                    0
            physpages                    4411                43452                    0           2147483647                    0
            vmguarpages                     0                    0                98304           2147483647                    0
            oomguarpages                 4412                43453                98304           2147483647                    0
            numtcpsock                      5                   31              7999992              7999992                    0
            numflock                        5                    9               999999               999999                    0
            numpty                          1                    2               500000               500000                    0
            numsiginfo                      0                    4               999999               999999                    0
            tcpsndbuf                  107352               216752            214748160            396774400                    0
            tcprcvbuf                   81920             13351808            214748160            396774400                    0
            othersockbuf                 6984                44232            214748160            396774400                    0
            dgramrcvbuf                     0                 8472            214748160            396774400                    0
            numothersock                   10                   27              7999992              7999992                    0
            dcachesize                      0                    0           2147483646           2147483646                    0
            numfile                       674                 1154             23999976             23999976                    0
            dummy                           0                    0                    0                    0                    0
            dummy                           0                    0                    0                    0                    0
            dummy                           0                    0                    0                    0                    0
            numiptent                      14                   14               999999               999999                    0
java  centos 

কত রাম বাকি আছে? চেষ্টা free
TheLQ

আমি আরো তথ্য দিয়ে আপডেট

উত্তর:


1

জাভা প্রোগ্রাম নিজেই কিছু মেমরি গ্রাস করবে। এবং আরো গুরুত্বপূর্ণ, আপনি "PermGen" গণনা করতে ভুলে গেছেন। ডিফল্ট পারম জেনারেল সাইজটি আমি জানি না, তবে এটি 128M বা এমনকি 256M হতে পারে। JVM দ্বারা মোট হিপ আকারের PermGen + হিপ আকার।

কেন আপনি কিছু swap যোগ না?

এছাড়াও লিনাক্সকে মেমরির অতিরিক্ত কমান্ডের অনুমতি দিতে একটি প্যারামিটার থাকা উচিত ... গুগল সাহায্য করতে পারে।


0

আমার ভিপিএসে 13২ এম ফ্রি দিয়ে, আমি সর্বাধিক সর্বাধিক হিপ সাইজ 22 মি। ২২ মি এবং 30 মিটার মধ্যে, বিভিন্ন জিনিস মেমরি (পথড্রেসের মতো) থেকে শেষ হয়ে যায় এবং 32M এর পরে আমি "বস্তুর হিপের জন্য পর্যাপ্ত স্থান সংরক্ষণ করতে পারি না" ত্রুটিটি পেয়েছি। আমি বিভিন্ন-এক্সএমএন মানের সাথেও অভিনয় করেছি, কিন্তু এর ফলাফলের কোনো প্রভাব নেই বলে মনে হচ্ছে।

আমি এই পরীক্ষার জন্য সূর্য-java6-jre ডেবিয়ান প্যাকেজ ব্যবহার করেছি।

আপনি "java -client -Xmx ..." দিয়ে চালানোর চেষ্টা করতে পারেন, এবং আপনি উচ্চ মেমরি মাপ ব্যবহার করতে পারেন কিনা তা দেখুন? আমার ভিএম সঙ্গে, জাভা-সার্ভার সব চালানো হয় না।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.