กำลังเหล็กไม่เพียงพอ

    ขัดเงาไม่เพียงพอ- adj. จำนวนคำพ้องความหมาย: 2 การตัดที่ไม่ดี (2) ทื่อ (118) พจนานุกรมคำพ้องความหมาย ASIS วี.เอ็น. ทริชิน. 2013 ... พจนานุกรมคำพ้อง

    ทื่อ- ฉันเห็นป้าน 4) ว้าว; ม.; แฉ ตู้ไปรษณีย์ II, o/e; โง่ a / โอ้โง่ / และ tu / py ดูสิ่งนี้ด้วย โง่ โง่ โง่ โง่ 1) ลับไม่พอ อันที่ตัดยาก ทิ่ม เลื่อย ฯลฯ ... พจนานุกรมสำนวนมากมาย

    ทื่อ- (ตอไม้เยอรมัน - โง่) - 1. ลับคมไม่เพียงพอ; 2. ลักษณะของอาการอู้อี้, การรับรู้ลดลง (hypopathy ทางประสาทสัมผัส); 3. ลาออก ปราศจากความพยายามประท้วง คัดค้าน 4. ไร้สติปัญญา ...... พจนานุกรมสารานุกรมในด้านจิตวิทยาและการสอน

    ทื่อ- โง่, โง่, โง่; ใบ้ใบ้ใบ้ 1. ไม่คมพอที่จะขีดข่วนหรือทิ่มแทงได้ง่าย มีดทื่อ เลื่อยใบ้ เข็มทื่อ. กรรไกรทื่อ || โค้งมนขยายไปทางปลาย ส่วนโค้งทื่อของเรือ ปลายทื่อของไข่ ส่วนที่ยื่นออกมาหมองคล้ำ 2. เปลี่ยนแปลง…… พจนานุกรมอธิบายของ Ushakov

    ทื่อ-เป็นคนไม่มีความสามารถ,ไม่มีความสามารถ. ดูโง่ ... พจนานุกรมคำพ้องความหมายและสำนวนภาษารัสเซียที่มีความหมายคล้ายกัน ภายใต้. เอ็ด N. Abramova, M.: พจนานุกรมรัสเซีย, 1999. โง่ 1. เกี่ยวกับมีด ... พจนานุกรมคำพ้อง

    ทื่อ- โง่โอ้โอ้; ใบ้, ใบ้, ใบ้, ใบ้และใบ้ 1. ลับไม่เพียงพอจนตัดยาก ทิ่มตา ต. มีด. ต. เครื่องมือ 2. ไม่เรียวไปทางปลายด้วยมุมแหลม ต. จงอยปาก. ต.ธนูท้ายเรือ รองเท้าที่มีนิ้วเท้าทื่อ 3. ทรานส์ ไม่แสดงออก… พจนานุกรมอธิบายของ Ozhegov

    ทื่อ- โอ้โอ้; ใบ้ อ่า โอ้ ใบ้และเป็นใบ้ 1. ลับให้คมไม่เพียงพอจนตัด แทง เลื่อย ฯลฯ ได้ยาก (ตรงข้าม: คม) เข็มอันนั้น อันนั้นเห็น.. มีดโกนนั่น พลั่วนั้น 2. พื้นผิวตัดตรงข้าม (ประมาณด้านข้าง) ด้านนั้น…… พจนานุกรมสารานุกรม

    ทื่อ- ฉัน adj. 1. ไม่คมพอที่จะตัดหรือแทงได้ดี มด: ชาร์ป 2. ทรานส์ ไม่รุนแรงตามระดับของอาการ; อู้อี้, ปวดเมื่อย (ความเจ็บปวด) 3. ทรานส์ ขาดความเฉียบแหลมแห่งการรับรู้ (เกี่ยวกับจิตใจหรือประสาทสัมผัส) 4. เปลี่ยนแปลง…… ทันสมัย พจนานุกรมภาษารัสเซีย Efremova

เป็นไปไม่ได้ที่จะแสดงรายการสถานการณ์ทั้งหมดเมื่อเกิดข้อผิดพลาด 1C“ หน่วยความจำไม่เพียงพอ” (รูปที่ 1) เรามาลองระบุสิ่งหลักๆ:

  • เมื่ออัพเดตการกำหนดค่า
  • เมื่อแอปพลิเคชันเริ่มต้น
  • เมื่อสร้างรายงาน
  • เมื่อทำการคำนวณจำนวนมาก (การผ่านรายการเอกสาร "การคำนวณต้นทุน", "การปิดเดือน" เป็นต้น)

เหตุผลในทุกกรณีจะเหมือนกัน - การขาดหน่วยความจำกายภาพของคอมพิวเตอร์ ในเวลาเดียวกันการเพิ่มแถบ RAM เพิ่มเติมลงในอุปกรณ์ไม่สามารถแก้ปัญหาได้เสมอไป

อะไรเป็นตัวกำหนดจำนวนหน่วยความจำที่มีอยู่

ระบบปฏิบัติการ 32 บิตมีหนึ่งระบบ คุณสมบัติที่สำคัญ: โดยไม่คำนึงถึงจำนวน RAM และขนาดของไฟล์เพจจิ้ง ระบบปฏิบัติการจะจัดสรรเพียง 4 GB สำหรับการทำงานของแอปพลิเคชันเฉพาะ

เมื่อพิจารณาว่าครึ่งหนึ่งของพื้นที่ที่อยู่หน่วยความจำเสมือนได้รับการจัดสรรตามความต้องการของระบบ จึงเหลือเพียง 2 GB เพื่อให้แอปพลิเคชันทำงานได้ เมื่อโปรแกรมกำลังทำงาน พื้นที่ที่อยู่หน่วยความจำเสมือนจะต้องถูกจองไว้ในบล็อกที่ต่อเนื่องกันหนึ่งบล็อก เมื่อไม่สามารถทำได้ หน้าต่างจะปรากฏขึ้น (รูปที่ 1)

วิธีเพิ่มหน่วยความจำที่มีอยู่

โดยไม่ต้องติดตั้งระบบปฏิบัติการใหม่ มีสองตัวเลือกในการแก้ไขสถานการณ์:


เมื่อใช้วิธีการเหล่านี้ คุณสามารถลดพื้นที่ที่อยู่ที่จัดสรรสำหรับระบบปฏิบัติการเป็น 1GB และเพิ่มหน่วยความจำสำหรับแอปพลิเคชันเป็น 3GB

ความสนใจ! ด้วยการจัดสรรหน่วยความจำด้วยตนเอง คุณอาจประสบปัญหาในการทำงานของคอมพิวเตอร์ส่วนบุคคล จนกระทั่งระบบปิดโดยสมบูรณ์

การลบบรรทัดออกจากไฟล์ boot.ini หรือการรันคำสั่งด้วยพารามิเตอร์ 2900 แทนที่ด้วย 2000 จะทำให้ระบบกลับสู่สถานะดั้งเดิม

สิ่งสำคัญคือต้องเข้าใจว่าวิธีการเหล่านี้เป็นเพียงวิธีแก้ปัญหาชั่วคราวเท่านั้น สำหรับการกำจัดขั้นสุดท้าย จำเป็นต้องถ่ายโอนฐานข้อมูลไปยังแพลตฟอร์ม 64 บิต

หน่วยความจำไม่เพียงพอเมื่อสร้างรายงาน

ไม่บ่อยนัก แต่ข้อผิดพลาดนี้เกิดขึ้นเมื่อมีรายงานเกิดขึ้น ในกรณีนี้ การดำเนินการประมวลผลการสร้างสเปรดชีตจะล่าช้าและจบลงด้วยหน้าต่างดังรูปแรกในที่สุด

ก่อนที่จะเข้าสู่การตั้งค่าระบบปฏิบัติการและเปลี่ยนพารามิเตอร์การจัดสรร RAM ในกรณีนี้ ควรลองเปลี่ยนการตั้งค่ารายงานจะดีกว่า เปลี่ยนวันที่ เปลี่ยนการจัดกลุ่ม เพิ่มการเลือก ในกรณีส่วนใหญ่สิ่งนี้จะช่วยได้

หากข้อผิดพลาดไม่เกิดขึ้นในรายงานมาตรฐาน (เช่น บัตรบัญชีหรืองบดุล) และคุณมีสิทธิ์เข้าถึงซอร์สโค้ดที่กำลังประมวลผล ให้ตรวจสอบว่าตารางชั่วคราวถูกสร้างขึ้นในแบบสอบถามหรือไม่ เขียนใน RAM และมีอยู่จนกระทั่งสิ้นสุดคำขอ พวกเขาสามารถกินทรัพยากรของคอมพิวเตอร์ที่อ่อนแอได้อย่างมาก

โดยทั่วไป เพื่อหลีกเลี่ยงสถานการณ์ดังกล่าว ขอแนะนำอย่างยิ่งให้ทำลายตารางชั่วคราวในแบบสอบถามทันทีที่ไม่จำเป็นต้องใช้อีกต่อไป

หน่วยความจำเซิร์ฟเวอร์รั่วไหล

ในบางกรณี ผู้ใช้จะได้รับข้อความที่แสดงในรูปที่ 3

ข้าว. 3.

ฉันต้องการพูดคุยเกี่ยวกับสาเหตุของพฤติกรรมนี้ของเซิร์ฟเวอร์แยกกัน

โดยทั่วไปวลี "หน่วยความจำรั่ว" ค่อนข้างไม่ถูกต้อง เป็นการดีกว่าที่จะบอกว่าหน่วยความจำถูกจัดเก็บแบบเลเยอร์ โปรแกรมที่เริ่มกระบวนการลืมยุติการทำงานตามเวลาที่กำหนด เป็นผลให้พวกมันสะสมอยู่ใน RAM

เหตุผลที่สองคือการกระจายตัวของหน่วยความจำ หากในระหว่างการทำงานของเซิร์ฟเวอร์มีการสำรองและปล่อย RAM อย่างเข้มข้นในช่วงเวลาหนึ่งสถานการณ์อาจเกิดขึ้นเมื่อจำนวนหน่วยความจำว่างเพียงพอ แต่เป็นไปไม่ได้ที่จะจับบล็อกที่อยู่หน่วยความจำที่มีขนาดเพียงพออย่างต่อเนื่อง

คุณสามารถแก้ไขปัญหาที่สองได้ด้วยความช่วยเหลือของยูทิลิตี้ระบบ

เป็นผลให้พวกเขาอาจ:

  1. มีปัญหากับการเชื่อมต่อ, การหยุดทำงาน, โปรแกรมขัดข้อง (รูปที่ 4)

รูปที่ 4

  1. ข้อผิดพลาดและการค้างปรากฏขึ้นเมื่อยกเลิกการโหลดฐานข้อมูล
  2. มีการกระโดดในหน่วยความจำที่ถูกครอบครองโดยกระบวนการ 1C

ข้อผิดพลาดในการอัปเดต

สถานการณ์หน่วยความจำไม่เพียงพอนี้เกิดขึ้นเมื่อพยายามอัปเดตการกำหนดค่าเป็นรุ่นล่าสุด สามารถเชื่อมโยงกับทั้งแอปพลิเคชันที่ทำงานอยู่จำนวนมากและข้อผิดพลาดในฐานข้อมูล

ขั้นตอนแรกที่ต้องทำเมื่อเกิดปัญหานี้คือการเปิดตัวฐานข้อมูลที่อัปเดตในโหมดตัวกำหนดค่าและปรับโครงสร้างใหม่ (การดูแลระบบ -> การทดสอบและแก้ไขรายการเมนู) แม้ว่าจะเป็นการดีกว่าที่จะดำเนินการแก้ไขข้อผิดพลาดและแก้ไขใหม่ทั้งหมด ตาราง -indexing

เกิดข้อผิดพลาด เราจะพิจารณาหนึ่งในนั้นซึ่งเกี่ยวข้องกับหัวข้อ "หน่วยความจำว่างไม่เพียงพอบนเซิร์ฟเวอร์ 1C:Enterprise"

วิธีการกำจัดข้อผิดพลาด "หน่วยความจำว่างไม่เพียงพอบนเซิร์ฟเวอร์ 1C: Enterprise"

จำนวนหน่วยความจำของกระบวนการทำงานเมื่อทำงานบนเซิร์ฟเวอร์ตัวแทน 1C นั้นไม่มีที่สิ้นสุด เมื่อโหลดสูงสุด ผู้ใช้จะเห็นข้อความที่แปลกใหม่ - "มีหน่วยความจำว่างไม่เพียงพอบนเซิร์ฟเวอร์ 1C: Enterprise"


ประการแรกเกี่ยวกับสาเหตุของข้อความดังกล่าว - เหตุใดจึงมีหน่วยความจำไม่เพียงพอ อาจมีหลายอย่าง:

กำลังเหล็กไม่เพียงพอ

หากมีคนทำงานในระบบมากถึงห้าคนคอมพิวเตอร์แปดกิกะไบต์หนึ่งเครื่องที่มีสกรูสองตัว (หนึ่งตัว - เซิร์ฟเวอร์บนตัวที่สอง - SQL) และชิปที่ติดตั้งเพิ่มเติมก็เพียงพอแล้ว แต่อีกประการหนึ่ง - ผู้ใช้ประมาณสามสิบคน, เอกสารหลักหลายพันรายการ ที่นี่ จำเป็นต้องย้าย SQL ไปยังเซิร์ฟเวอร์อื่นด้วย และเทอร์มินัลเซิร์ฟเวอร์หนึ่งเครื่องไม่สามารถรับมือได้อีกต่อไป

ขาดหน่วยความจำสำหรับข้อมูลเพิ่มเติม

การกำหนดค่าทั่วไปพยายามอธิบายกระบวนการทั้งหมดที่นักพัฒนาสามารถจินตนาการได้อย่างแท้จริงเมื่อพยายามสร้างเครื่องมือการบัญชีสากลที่เรียกว่า 1C:Enterprise ดังนั้นผู้ใช้รายใดรายหนึ่งจะได้รับสัมภาระเพิ่มเติมในรูปแบบของอ็อบเจ็กต์เมตาดาต้า, ตาราง SQL เพิ่มเติม, รายละเอียดที่ไม่ได้ใช้ การลงทะเบียนถาวรและการจัดทำดัชนีใหม่ทั้งหมดนี้ไม่จำเป็นในการลงทะเบียนของโปรแกรม เวลานานและพื้นที่มากมาย

ข้อผิดพลาดในการเข้ารหัส

เซิร์ฟเวอร์โอเวอร์โหลดยังเกิดขึ้นเมื่อโปรแกรมเมอร์ (บางครั้ง) ไม่เข้าใจกระบวนการบางอย่างและแนะนำ "ไม้ค้ำยัน" ของตัวเองซึ่งจะเพิ่มเวลาที่ใช้ในการทำงานให้เสร็จสิ้น (และจำนวนกระบวนการทำงานด้วย)

ข้อผิดพลาดของโปรแกรม

เหนือสิ่งอื่นใดและนี่ก็เกือบจะเป็นสาเหตุหลัก - โปรแกรม 1C มีข้อผิดพลาดภายในจำนวนเหลือเชื่อ บางส่วนได้รับการแก้ไขในรุ่นต่อๆ ไป ข้อผิดพลาดเหล่านี้คือ จำนวนมากฟอรัมที่ผู้ดูแลระบบกำลังพูดคุยถึงเทคนิคต่อไป พูดติดตลกว่าอาจมีเพียงทาจิกิสถาน (Dzhamshut และ Ravshan) เท่านั้นที่ทำงานใน es เดียว

แล้วจะทำอย่างไรกับเซิร์ฟเวอร์ 1C

เนื่องจากสาเหตุของปัญหาอาจแตกต่างกัน จึงมีวิธีต่างๆ ในการออกจากสถานการณ์:

เริ่มบริการเซิร์ฟเวอร์ใหม่

เร็วที่สุดและ ด้วยวิธีง่ายๆวิธีแก้ไขคือการรีสตาร์ทบริการเซิร์ฟเวอร์ จากบรรทัดคำสั่ง Microsoft Windows (cmd): เพื่อหยุดคำสั่งจะถูกดำเนินการ - net stop "1C: Enterprise 8.3 (หรือเวอร์ชันของคุณ) Server Agent" และเพื่อเริ่มต้น - net start "1C: Enterprise 8.3 (ตามเวอร์ชันของคุณ) ) ตัวแทนเซิร์ฟเวอร์" วิธีแก้ปัญหาดังกล่าวไม่สามารถขจัดปัญหาได้อย่างสมบูรณ์ - ส่วนใหญ่มักเกิดข้อผิดพลาดซ้ำ ความถี่ของการทำซ้ำขึ้นอยู่กับจำนวนไคลเอนต์และจำนวนกระบวนการของผู้ปฏิบัติงาน

สำคัญ. คุณต้องมีสิทธิ์ที่เหมาะสมเพื่อให้สามารถรีสตาร์ทได้

รีสตาร์ทอัตโนมัติและการตั้งค่าคลัสเตอร์

บางครั้งเวิร์กโฟลว์ที่ทำงานอยู่เพียงเวิร์กโฟลว์เดียวก็อาจกินพื้นที่ RAM เกือบทั้งหมดได้ ปัญหานี้แก้ไขได้ด้วยการเพิ่มจำนวนในการตั้งค่าคลัสเตอร์ มีการเพิ่มประมาณหนึ่งกระบวนการสำหรับผู้ใช้ทุก ๆ สิบห้าถึงสามสิบคน

รีสตาร์ทช่วงเวลา ไม่นานก่อนที่จะเสร็จสิ้นกระบวนการก่อนหน้า กระบวนการใหม่ rphost.exe จะเริ่มต้นขึ้น - การเชื่อมต่อจากอันเก่าจะถูกถ่ายโอนไปยังมัน ขนาดหน่วยความจำที่อนุญาต - หากเกินค่านี้ ตัวจับเวลาถอยหลังตัวที่สองจะเริ่มขึ้น

ช่วงเวลาสำหรับการเกินขีดจำกัดระดับเสียง - เมื่อตัวจับเวลาเกินค่านี้ กระบวนการใหม่จะเปิดตัว และการเชื่อมต่อจากอันเก่าจะเชื่อมโยงกับมัน และอันเก่าก็ถูกทำเครื่องหมายว่าไม่ใช้งาน ปิด หยุดกระบวนการหลังจาก - หลังจากที่ค่าของพารามิเตอร์นี้ผ่านไปหลังจากทำเครื่องหมายเวิร์กโฟลว์ว่าไม่ได้ใช้งานระบบปฏิบัติการจะถูกยกเลิก หากตั้งค่าพารามิเตอร์นี้เป็น "0" - กระบวนการที่ไม่ได้ใช้งานทั้งหมดจะไม่ถูกยกเลิกโดยอัตโนมัติ

สำคัญ. การตั้งค่านี้เป็นเรื่องปกติที่จะตัดการเชื่อมต่อจากฐานข้อมูลเฉพาะไคลเอนต์ที่เปิดใช้รายงานที่ไม่ถูกต้อง และส่วนที่เหลือ - จะถูกย้ายไปยังการเชื่อมต่อใหม่อย่างราบรื่น (โดยไม่หยุดชะงักจากฐาน)

จำนวนกระบวนการของผู้ปฏิบัติงาน

หาก rphost.exe มีงานพื้นหลังมากเกินไปและไม่มีการสร้างกระบวนการใหม่ ให้ตรวจสอบการตั้งค่า:

สูงสุด หน่วยความจำกระบวนการของผู้ปฏิบัติงานคือหน่วยความจำทั้งหมดสำหรับกระบวนการทั้งหมดที่รวมกัน วัดเป็นไบต์ หากคุณตั้งค่าผิด (ไม่เพียงพอต่อการทำงานปกติ) ทุกคนจะได้รับข้อผิดพลาด "หน่วยความจำว่างไม่เพียงพอบนเซิร์ฟเวอร์ 1s"

การใช้หน่วยความจำที่ปลอดภัยต่อการโทร 1 ครั้ง - ควบคุมการใช้หน่วยความจำระหว่างการโทรโดยเซิร์ฟเวอร์ (เป็นไบต์) หากการโทรใช้มากกว่าที่ระบุ การโทรนั้นจะถูกยกเลิกภายในคลัสเตอร์ มันจะไม่รีสตาร์ท และการสูญเสียเซสชันจะไม่ส่งผลกระทบต่อไคลเอนต์รายอื่น

จำนวนหน่วยความจำสำหรับกระบวนการ ซึ่งเซิร์ฟเวอร์ถือว่ามีประสิทธิผลโดยระบบ - เมื่อถึงค่านี้ เซิร์ฟเวอร์คลัสเตอร์จะหยุดยอมรับการเชื่อมต่อ จำนวนฐานข้อมูลต่อกระบวนการ - แยกฐานข้อมูลตามกระบวนการ หลังจากแยกฐานข้อมูล (เมื่อป้อนค่า - "1") ปัญหามักจะได้รับการแก้ไข

จำนวนการเชื่อมต่อต่อกระบวนการ - ค่าเริ่มต้นคือ "128" หากฐานข้อมูลปัจจุบันมีภาระงานจากงานเบื้องหลังสูงมาก คุณสามารถลดจำนวนนี้ได้ เช่น เป็น "25" ด้วยการตั้งค่าเหล่านี้ การตั้งค่าคลัสเตอร์จะเปลี่ยนแปลงเล็กน้อยด้วย:

ระดับความทนทานต่อข้อผิดพลาด - แสดงจำนวนเซิร์ฟเวอร์ ในกรณีที่เกิดความล้มเหลวซึ่งไคลเอ็นต์จะไม่เกิดข้อขัดข้อง ขณะเดียวกันบริการสำรองข้อมูลก็จะเปิดตัวอัตโนมัติตามจำนวนที่ต้องการ

โหมดการแชร์โหลด - มี 2 โหมด ตัวเลือกที่เป็นไปได้. หากคุณตั้งค่า "ลำดับความสำคัญของประสิทธิภาพ" - หน่วยความจำเซิร์ฟเวอร์จะถูกใช้มากขึ้นเพื่อเพิ่มประสิทธิภาพ เมื่อเลือก "ลำดับความสำคัญตามหน่วยความจำ" - คลัสเตอร์ 1C จะบันทึกหน่วยความจำ

เครื่องมือฐาน

ในการทำงานกับฐานข้อมูลจำเป็นต้องใช้เครื่องมือ MS SQL DBMS

การตรวจสอบการกำหนดค่า

บางทีสาเหตุของข้อผิดพลาดอาจเกิดจากข้อมูลที่ไม่ถูกต้องที่มีอยู่ในการกำหนดค่า หากต้องการตรวจสอบ คุณจะต้องดำเนินการคำสั่ง "ตรวจสอบการกำหนดค่า" (อย่าสับสนกับการทดสอบ!) ก่อนดำเนินการ คุณต้องตรวจสอบการตั้งค่าของช่องทำเครื่องหมาย (แฟล็ก) - "ความสมบูรณ์ทางตรรกะ" หากพบข้อผิดพลาด ข้อผิดพลาดนั้นจะปรากฏในข้อความ และข้อผิดพลาดจะถูกลบออก

เราตรวจสอบสาเหตุของการขาดหน่วยความจำว่างบนเซิร์ฟเวอร์ 1C และวิธีแก้ไขที่เป็นไปได้ วิธีใดวิธีหนึ่งจะช่วยแก้ปัญหาได้อย่างแน่นอน

ข้อผิดพลาดทั่วไปประการหนึ่งที่เกิดขึ้นขณะทำงานกับ 1C 8.3 คือ "หน่วยความจำไม่เพียงพอ" ในความเป็นจริง มันสามารถเกิดขึ้นได้หลังจากเหตุการณ์ต่างๆ มากมาย เช่น การอัปเดต การประมวลผลไฟล์ขนาดใหญ่ การสร้างรายงาน การโหลดข้อมูล และอื่นๆ ซึ่งหมายความว่าผู้ดูแลระบบและนักพัฒนา 1C ทุกคนจะต้องเข้าใจแก่นแท้ของปัญหาและสามารถแก้ไขได้ การเพิ่ม PC RAM หรือฮาร์ดไดรฟ์เพียงเล็กน้อยจะไม่สามารถแก้ปัญหานี้ได้

การแก้ไขปัญหาบนคอมพิวเตอร์ไคลเอนต์

สาเหตุของข้อผิดพลาดนี้ไม่ได้อยู่ในระบบ 1C ทั้งหมดเนื่องจากคุณสามารถเห็นข้อผิดพลาดที่คล้ายกันในแอปพลิเคชันอื่น ปัญหาคือระบบปฏิบัติการในตระกูล Microsoft จัดสรรหน่วยความจำจำนวนหนึ่งต่อแอปพลิเคชันตามค่าเริ่มต้น สำหรับระบบ 32 บิต ค่านี้ตั้งเป็น 2 GB สำหรับระบบ 64 บิต - 4 GB เมื่อซอฟต์แวร์เกินค่านี้ หน้าต่างข้อผิดพลาดจะปรากฏขึ้นบนจอภาพ

วิธีที่ง่ายที่สุดในการกำจัดข้อความดังกล่าวคือการลบออบเจ็กต์ที่ทำเครื่องหมายเพื่อลบในการกำหนดค่า สิ่งนี้ช่วยได้ไม่บ่อยนัก แต่ขจัดความลังเลที่ไม่จำเป็น นอกจากนี้ ความเสี่ยงของการกระทำเหล่านี้ยังน้อยมาก เนื่องจากไม่จำเป็นต้องมีการแทรกแซงในการตั้งค่าภายในของ Windows หากการลบออกไม่ได้ผล คุณจะต้องต่อสู้กับวิธีอื่น

โซลูชันอื่นสำหรับระบบ 32 บิตคือการสลับไปใช้ 64 บิตหรือจัดสรรหน่วยความจำเพิ่มเติมให้กับแอปพลิเคชัน ตัวเลือกแรกนั้นถูกต้องมากกว่ามาก แต่บางครั้งก็เกิดจาก เหตุผลต่างๆเขาเป็นไปไม่ได้ จากนั้นจะเหลือเพียงตัวเลือกที่มีอัลกอริธึมการดำเนินการที่แสดงด้านล่าง แต่ควรใช้อย่างระมัดระวัง - อาจมีปัญหาสำคัญกับประสิทธิภาพของระบบทั้งหมด

อัลกอริทึมนี้ค่อนข้างง่าย:

  1. เปิดพรอมต์คำสั่งของ Windows ใช้เมนู "Start" หรือคีย์ผสม Windows + R แล้วป้อนคำสั่ง "cmd";
  2. ในหน้าต่างที่ปรากฏขึ้น ให้พิมพ์คำสั่ง "bcdedit / set adduserva 3200" (เช่น เพิ่มขีดจำกัดเป็น 3.2 GB) ควรเพิ่มขีดจำกัดอย่างระมัดระวังและค่อยๆ
  3. หลังจากยืนยันการดำเนินการเสร็จสมบูรณ์ในหน้าต่างบรรทัดคำสั่งแล้ว ให้รีสตาร์ทพีซีแล้วลองอีกครั้งเพื่อทำตามขั้นตอนที่นำไปสู่ข้อผิดพลาด หากปัญหายังคงมีอยู่และ 1C ยังคงขัดข้อง คุณสามารถเพิ่มขีดจำกัดได้อีกครั้ง
  4. หลังจากการดำเนินการเสร็จสมบูรณ์โดยไม่มีข้อผิดพลาดใน 1C ให้กู้คืนข้อ จำกัด Windows เริ่มต้นด้วยคำสั่ง "bcdedit / Deletevalue เพิ่มผู้ใช้" นี่เป็นขั้นตอนที่จำเป็นเพื่อให้ระบบปฏิบัติการไม่ละเมิดประสิทธิภาพเพื่อประโยชน์ของ 1C และแอปพลิเคชันอื่น ๆ

โซลูชันนี้ช่วยให้คุณสามารถดำเนินการที่ไม่สามารถทำได้เนื่องจากข้อผิดพลาด 1C "หน่วยความจำไม่เพียงพอ" คุณสามารถใช้ได้เฉพาะในกรณีฉุกเฉินเมื่อจำเป็นต้องดำเนินการในขณะนี้ ในสถานการณ์อื่น ควรลองใช้ 1C บนแพลตฟอร์ม 64 บิตแล้วทำซ้ำการดำเนินการที่นั่น

ข้อความที่ร้ายแรงกว่านั้นคือข้อความว่ามีหน่วยความจำไม่เพียงพอบนเซิร์ฟเวอร์ระหว่างการอัพเกรดหรืองานขนาดใหญ่ ปัญหาอาจเกิดจากการยุติกระบวนการที่เรียกใช้โดยซอฟต์แวร์ต่าง ๆ ก่อนเวลาอันควรซึ่งเป็นผลมาจากการที่ "การแบ่งชั้น" และการสะสมของกระบวนการเหล่านั้นในหน่วยความจำเสมือน แหล่งที่มาที่สองของข้อผิดพลาดดังกล่าวคือการทำงานอย่างเข้มข้นของโปรแกรมต่าง ๆ ที่มีการสำรองและปล่อยหน่วยความจำ มีซอฟต์แวร์มากมายที่สามารถแก้ไขปัญหาเหล่านี้ได้ แต่การปฏิบัติแสดงให้เห็นว่ามันทำให้เกิดการขาดการเชื่อมต่อและ 1C ขัดข้อง


ข้อผิดพลาดดังกล่าวทำให้คุณสงสัยว่าเซิร์ฟเวอร์ 1C มีประสิทธิภาพเพียงพอหรือไม่ การเพิ่มกำลังการผลิตจะเป็นประโยชน์ต่อบริษัท แต่ข้อผิดพลาดดังกล่าวสามารถหลีกเลี่ยงได้ด้วยวิธีอื่นที่ไม่จำเป็นต้องอัดฉีดเงินทุน

แน่นอนว่าคุณไม่ควรใช้พวกมันตลอดเวลา แต่วันหนึ่งพวกมันสามารถช่วยทำงานที่ใช้ทรัพยากรอย่างเร่งด่วนได้ หากจำเป็น วิธีการยอดนิยมที่สามารถช่วยแก้ไขข้อผิดพลาดการขาดหน่วยความจำบนเซิร์ฟเวอร์ ได้แก่:

  • การรีสตาร์ทเวิร์กโฟลว์ 1C ซึ่งจะลดหน่วยความจำที่ใช้ ตัวเลือกนี้เหมาะสำหรับผู้ดูแลระบบที่มีประสบการณ์ซึ่งเข้าใจคอนโซลการดูแลระบบของเซิร์ฟเวอร์ 1C เท่านั้น
  • ใช้บันทึกเทคโนโลยี ค้นหาตารางที่กำลังโหลดโดยมีข้อผิดพลาด "หน่วยความจำไม่เพียงพอ" ในระหว่างการอัปเดตหรือการดำเนินการอื่นๆ หากเกิดข้อผิดพลาดขณะทำงานกับตาราง "config" ให้ตรวจสอบการกำหนดค่าด้วยแฟล็ก "ตรวจสอบความสมบูรณ์ทางลอจิคัลของการกำหนดค่า" คุณสามารถค้นหาฟังก์ชันนี้ได้ในตัวกำหนดค่าในเมนู "การกำหนดค่า"
  • ข้อผิดพลาด 1C ทั่วไปอีกประการหนึ่งเกิดขึ้นเมื่อมีพื้นที่บนฮาร์ดไดรฟ์บนเซิร์ฟเวอร์ไม่เพียงพอ ตารางชั่วคราวใช้พื้นที่จำนวนมาก และหากมีพื้นที่ไม่เพียงพอ ผู้ดูแลระบบจะเห็นข้อผิดพลาด "ไม่มีหน่วยความจำว่างเพียงพอที่จะดำเนินการให้เสร็จสิ้น" ในกรณีนี้ เป็นการยากที่จะให้คำแนะนำที่ถูกต้อง เนื่องจากเซิร์ฟเวอร์หรืออุปกรณ์คลัสเตอร์อาจแตกต่างกันอย่างมากในตัวเลือกต่างๆ ในบรรดาโซลูชันมาตรฐานที่ช่วยในกรณีเช่นนี้ คุณสามารถค้นหาการรีสตาร์ทเซิร์ฟเวอร์ การเพิ่มพื้นที่ว่าง การเพิ่มประสิทธิภาพแบบสอบถาม การอัพเกรดเวอร์ชัน


    ในบริษัทที่มีผู้ใช้จำนวนมาก ข้อผิดพลาด "หน่วยความจำว่างไม่เพียงพอบนเซิร์ฟเวอร์ 1C:Enterprise 8.3" เกิดขึ้นค่อนข้างบ่อย ปัญหาใหญ่และข้อกำหนดเบื้องต้นสำหรับสิ่งนี้คือการวิเคราะห์ประสิทธิภาพที่ต้องการไม่เพียงพอ ดังนั้นเมื่อใช้ 1C ให้ใส่ใจอย่างมากกับพลังที่เพียงพอของเซิร์ฟเวอร์เพื่อที่คุณจะได้ไม่ต้องปรับประสิทธิภาพในอนาคตโดยแลกกับความเสถียร

    ข้อผิดพลาด "หน่วยความจำไม่เพียงพอ" ใน 1C 8.3 และ 8.2 นั้นไม่ได้หายากนัก นอกจากนี้ยังสามารถพบได้ในตัวกำหนดค่า (เช่น เมื่อเปรียบเทียบการกำหนดค่า) รวมถึงในโหมด 1C:Enterprise เมื่อดำเนินการประมวลผลที่ใช้เวลานาน: ตัวอย่างเช่น เมื่อเขียนไฟล์ base64 ขนาดใหญ่

    ข้อผิดพลาดนี้สามารถเกิดขึ้นได้ไม่เพียง แต่ในโปรแกรม 1C เท่านั้น แต่ยังเกิดในโปรแกรมอื่น ๆ ของระบบปฏิบัติการ Windows ด้วย

    ประเด็นก็คือในระบบปฏิบัติการ 32 บิตตามค่าเริ่มต้น 2 กิกะไบต์สำหรับโปรแกรมต่างๆ และจำนวนเท่ากันสำหรับระบบปฏิบัติการ ในระบบปฏิบัติการ 64 บิต จำนวนหน่วยความจำที่จัดสรรสำหรับแอปพลิเคชันคือ 4 กิกะไบต์อยู่แล้ว

    จากที่กล่าวมาข้างต้น คุณจะต้องเพิ่มขนาดของหน่วยความจำที่อยู่ที่จัดสรรสำหรับแอปพลิเคชันซึ่งเป็นโปรแกรม 1C ซึ่งสามารถทำได้สองวิธี: เพื่อทำการเปลี่ยนจากระบบ 32 บิตไปเป็นระบบ 64 บิต หรือเพื่อเพิ่มจำนวนหน่วยความจำที่อยู่ที่จัดสรรในตอนแรก

    แน่นอนว่าวิธีแรกดีกว่าและดีกว่า แต่ถ้าเป็น ช่วงเวลานี้หรือคุณไม่สามารถใช้งานได้เลยก็สามารถใช้อันที่สองได้
    วันเริ่มต้น ไปที่บรรทัดคำสั่งของระบบปฏิบัติการ โดยไปที่เมนูเริ่มแล้วพิมพ์ "cmd" ในแถบค้นหา

    การค้นหาโปรแกรมจะปรากฏขึ้นตรงหน้าคุณ เลือกอันที่เรียกว่า "cmd"

    คุณยังสามารถเปิดพรอมต์คำสั่งโดยใช้ปุ่มลัด Windows + R

    ในหน้าต่างที่เปิดขึ้นให้พิมพ์คำสั่งต่อไปนี้แล้วกด "Enter":

    bcdedit /set เพิ่มผู้ใช้ 3200

    ในกรณีนี้ คุณจะเพิ่มจำนวนหน่วยความจำที่อยู่เป็น 3200 เมกะไบต์

    หลังจากที่คุณทำสำเร็จแล้ว ขอแนะนำอย่างยิ่งให้กู้คืนหน่วยความจำที่อยู่จำนวนก่อนหน้า การวัดนี้เป็นแบบชั่วคราว เนื่องจากเมื่อมีการจัดสรรหน่วยความจำสำหรับแอปพลิเคชัน ระบบปฏิบัติการจะมีน้อยลง ด้วยเหตุนี้ ความเสถียรของ Windows อาจถูกบุกรุก

    หากต้องการคืนค่าหน่วยความจำที่อยู่เป็นค่าเริ่มต้น คุณสามารถใช้คำสั่งต่อไปนี้ซึ่งป้อนไว้ที่บรรทัดคำสั่งด้วย:

    bcdedit / ลบมูลค่าเพิ่ม userva

    โปรดทราบว่าด้วยข้อผิดพลาด "หน่วยความจำไม่เพียงพอ" ที่พบบ่อยใน 1C การลบวัตถุที่ทำเครื่องหมายไว้ก็สามารถช่วยได้เช่นกัน บางทีโปรแกรมอาจสะสมไว้จำนวนมากและเป็นเรื่องยากสำหรับโปรแกรมที่จะประมวลผลข้อมูลจำนวนดังกล่าว หากวิธีนี้ไม่ได้ผลคุณควรเพิ่มความลึกของบิตของระบบปฏิบัติการ Windows