ส่วนของเว็บไซต์
ตัวเลือกของบรรณาธิการ:
- การสร้างทางลัดบนเดสก์ท็อปสำหรับเพื่อนร่วมชั้น
- หากรองเท้าไม่พอดีกับ Aliexpress: การกระทำที่ถูกต้องในกรณีนี้ ผลิตภัณฑ์ Aliexpress มีขนาดที่เหมาะสม
- ข้อพิพาทใน AliExpress เข้าร่วมข้อพิพาทใน AliExpress
- 3 ฐานข้อมูลแบบกระจาย
- ผู้จัดการเนื้อหา - ความรับผิดชอบ เงินเดือน การฝึกอบรม ข้อเสียและข้อดีของการทำงานเป็นผู้เชี่ยวชาญด้านเนื้อหา
- จะป้องกันตัวเองจากการขุดที่ซ่อนอยู่ในเบราว์เซอร์ของคุณได้อย่างไร?
- การกู้คืนรหัสผ่านใน Ask
- วิธีเปิดกล้องบนแล็ปท็อป
- ทำไมเพลงไม่เล่นบน VKontakte?
- วิธีเพิ่มขนาดของไดรฟ์ C โดยเสียค่าใช้จ่ายของไดรฟ์ D โดยไม่สูญเสียข้อมูล
การโฆษณา
การเชื่อมต่อปัจจุบันไม่มีการกำหนดเซสชัน เราไล่ผู้ใช้ออกจากฐานข้อมูลเซิร์ฟเวอร์ |
ใช้งานในเวอร์ชัน 8.3.9.1818 ในเวอร์ชัน 8.3.9 เราได้เสร็จสิ้นงานจำนวนมากเพื่อเพิ่มประสิทธิภาพกลไกแพลตฟอร์มต่างๆ ที่นี่ฉันอยากจะพูดถึงหนึ่งในนั้น นี่คือการปรับปรุงประสิทธิภาพของบริการเว็บ การใช้เซสชันซ้ำการขาดประสิทธิภาพของบริการเว็บเกิดจากการที่การเรียกบริการเว็บแต่ละครั้งมีค่าใช้จ่ายจำนวนมากในการสร้างและยกเลิกเซสชัน นอกจากนี้ ในระหว่างการสร้าง แต่ละครั้งที่ตัวจัดการ SetSessionParameters() ถูกดำเนินการ ซึ่งในการกำหนดค่าทั่วไปอาจมี "ภาระหนัก" มาก นอกจากนี้ยังมีข้อเสียเปรียบด้านการใช้งานอีกด้วย บริการเว็บไม่มีสถานะ สิ่งนี้ไม่อนุญาตให้เราใช้ตรรกะที่ใช้การคงอยู่ของสถานะระหว่างการเรียกบริการเว็บ ในเวอร์ชัน 8.3.9 เราได้ปรับปรุงกลไกการบริการเว็บ (บริการ SOAP, บริการ HTTP, บริการ OData) ส่งผลให้ผลผลิตเพิ่มขึ้นประมาณ 10 เท่า เราทำการทดสอบการกำหนดค่าการบัญชีองค์กรมาตรฐาน เราได้เพิ่มบริการ HTTP เข้าไปซึ่งทำการเลือกจากไดเร็กทอรีคู่สัญญา การทดสอบประกอบด้วยไคลเอนต์ทำการเรียกใช้บริการติดต่อกัน 100 ครั้ง ในโหมดการทำงานแบบเก่า ต้องใช้เวลา 29.9 วินาที ในโหมดการทำงานใหม่ โดยเฉลี่ย 3 วินาที ผลลัพธ์เหล่านี้เกิดขึ้นได้เนื่องจากเราใช้กลยุทธ์ที่แตกต่างกันสองประการเพื่อให้แน่ใจว่ามีการใช้เซสชั่นซ้ำ:
เมื่อใช้เซสชันซ้ำอัตโนมัติ ไคลเอ็นต์จะไม่สามารถควบคุมจำนวนเซสชันและอายุการใช้งานได้ มันถูกจัดสรรเซสชันโดยอัตโนมัติจากพูลเซสชันที่มีอยู่ กลยุทธ์นี้เหมาะสำหรับโหลดสูง บริการสาธารณะซึ่งเข้าถึงได้โดยไคลเอนต์ที่ดำเนินการเทมเพลตและมีสิทธิ์แบบรวม ตัวอย่างเช่น นี่อาจเป็นระบบอัตโนมัติของกิจกรรมการซื้อขายของร้านค้าปลีกระยะไกล โดยจัดให้มีช่วงที่มีการใช้งานสูงสุดบนเซิร์ฟเวอร์ จะถูกจัดสรรเพื่อการประมวลผล ปริมาณที่ต้องการเซสชัน พวกเขาจะเสร็จสมบูรณ์เมื่อโหลดลดลง อีกตัวอย่างหนึ่งคือการรับ/วางไฟล์ในการกำหนดค่า Document Flow ผ่านบริการ http ผู้ใช้พิเศษคนเดียวกันสามารถใช้สำหรับการดำเนินการดังกล่าวได้ กลยุทธ์การจัดการเซสชันด้วยตนเองหมายความว่าลูกค้าจัดการจำนวนเซสชันและอายุการใช้งานได้อย่างอิสระ กลยุทธ์นี้เหมาะที่สุดสำหรับระบบที่มีการบูรณาการสูงภายในองค์กรเดียว คุณสามารถใช้อัลกอริธึมของคุณเองซึ่งจะควบคุมอายุการใช้งานของเซสชันและจำนวนเซสชัน การควบคุมคุณสามารถกำหนดความจำเป็นในการใช้กลยุทธ์อย่างใดอย่างหนึ่งในแผนผังออบเจ็กต์การกำหนดค่า และหากจำเป็น ให้แทนที่กลยุทธ์ดังกล่าวในไฟล์สิ่งพิมพ์ default.vrd ในแผนผังออบเจ็กต์การกำหนดค่า เราได้เพิ่มคุณสมบัติใหม่สองรายการให้กับบริการเว็บและออบเจ็กต์บริการ HTTP:
หากแอปพลิเคชันไคลเอนต์ถูกยกเลิกอย่างผิดปกติ (การเชื่อมต่อขาดหายไปหรือหน้าต่างเบราว์เซอร์ถูกปิด) สิทธิ์การใช้งานไคลเอ็นต์ 1C: Enterprise 8 อาจถูกบล็อก คุณสามารถปล่อยสิทธิ์การใช้งานไคลเอนต์ที่ถูกล็อคได้โดยการรีบูตพีซีของคุณ หากแอปพลิเคชันไคลเอนต์ยุติอย่างผิดปกติ เซสชั่นจะถูกพักไว้อีก 20 นาที หลังจากนี้ ในเวอร์ชันก่อน 8.3.5 เซสชันจะถูกลบ ตั้งแต่เวอร์ชัน 8.3.5 เซสชันจะเข้าสู่โหมดสลีปตามค่าเริ่มต้น และจะถูกเก็บไว้ต่อไปอีกวัน เซสชันการนอนหลับไม่ได้ใช้สิทธิ์การใช้งานไคลเอ็นต์ 1C: Enterprise 8 ในเวอร์ชัน 8.3.5 เวลาสำหรับการสลีปเซสชันและเวลาสำหรับการลบเซสชันสลีปที่ไม่ได้ใช้สามารถเปลี่ยนแปลงได้โดยใช้เครื่องมือพิเศษหรือใน 1C Configurator ในกล่องโต้ตอบการดูแลระบบ/การตั้งค่า ฐานข้อมูลโดยการตั้งค่าการตั้งค่าเซสชั่นการนอนหลับที่แนะนำ:
อย่างไรก็ตาม คุณสามารถดูได้ตลอดเวลาว่าใครกำลังหลับอยู่และใครกำลังใช้งานอยู่ผ่านทางคอนโซลเซิร์ฟเวอร์บนแท็บเซสชัน ในคอลัมน์ที่เกี่ยวข้องกัน “กำลังนอนหลับ” จะมีเครื่องหมายใช่/ไม่ใช่ โดยปกติ (ตามเวอร์ชัน บริษัท 1C) คุณสามารถทำงานบนเว็บไคลเอ็นต์ให้เสร็จสิ้นได้โดยใช้คำสั่ง "ไฟล์" - "ออก" ตั้งแต่เวอร์ชัน 8.3.8 คำสั่งปิดเครื่องได้ถูกเพิ่มเข้าไปในส่วนหัวของแอปพลิเคชันถัดจากปุ่ม เกี่ยวกับโปรแกรม- จะแสดงเป็นไฮเปอร์ลิงก์พร้อมชื่อผู้ใช้ปัจจุบัน เมื่อคุณคลิกที่ไฮเปอร์ลิงก์ กล่องโต้ตอบจะเปิดขึ้นพร้อมชื่อผู้ใช้และคำสั่ง ปิดเครื่อง. แพลตฟอร์มส่ง Ping ลูกค้าไปยังเซิร์ฟเวอร์ 1C ทุก ๆ 5 วินาที (มองเห็นแพ็คเก็ตขนาด 4 ไบต์) ตาม “การส่ง Ping” เซิร์ฟเวอร์จะตรวจสอบความสมบูรณ์ของการเชื่อมต่อกับแอปพลิเคชันไคลเอนต์ เซิร์ฟเวอร์ตีความการไม่มีการส่ง Ping เป็นเวลาประมาณ 2 นาทีเนื่องจากการเชื่อมต่อล้มเหลว ความแตกต่างระหว่างแนวคิดของเซสชันและการเชื่อมต่อใน 1C:Enterprise 8 คุณจะเรียนรู้อะไรจากบทความนี้?
อะไรคือความแตกต่างระหว่างเซสชันและการเชื่อมต่อ? คำถามที่ดูเหมือนง่ายในการสอบ 1C:Expert นี้ทำให้หลายคนสับสน แม้จะมีประสบการณ์ด้านการเขียนโปรแกรมมาพอสมควร แต่ไม่ใช่ว่าผู้เชี่ยวชาญทุกคนจะสามารถกำหนดคำตอบที่ชัดเจนและถูกต้องได้ ในบทความนี้ เราจะให้การวิเคราะห์โดยละเอียดเกี่ยวกับปัญหานี้ ก่อนอื่น มาดูแนวคิดของเซสชันและการเชื่อมต่อใน 1C:Enterprise แยกกัน โปรดทราบว่าข้อมูลนี้เกี่ยวข้องกับแพลตฟอร์มเวอร์ชัน 8.2.x และ 8.3.x เซสชั่น 1Cโปรดดูคู่มือผู้ดูแลระบบ โดยกำหนดแนวคิดของเซสชันดังนี้: เซสชันจะกำหนดผู้ใช้ที่ใช้งานอยู่ของฐานข้อมูลและขั้นตอนการควบคุมของผู้ใช้รายนี้ เราสามารถพูดได้ว่าคลัสเตอร์เซิร์ฟเวอร์ไม่เห็นผู้ใช้ แต่จะมองเห็นเซสชันและข้อมูลเซสชันแทน โดยหลักการแล้ว คอนโซลการจัดการคลัสเตอร์ไม่มีส่วน "ผู้ใช้" คลัสเตอร์จะเข้าใจเซสชันในฐานะผู้ใช้ นี่เป็นการยืนยันการแสดงภาพของรายการ "เซสชัน" - ไอคอนจะแสดงในรูปแบบของผู้ใช้ ควรชี้แจงว่าผู้ใช้ที่ใช้งานอยู่ไม่ได้หมายถึงการเชื่อมต่อไคลเอ็นต์เสมอไป แต่ก็อาจเป็น:
ข้อมูลเซสชันลองพิจารณาแนวคิดของข้อมูลเซสชัน เซสชันประกอบด้วยข้อมูลบางอย่าง เช่น:
ข้อมูลนี้เรียกว่าข้อมูลเซสชัน นอกจากนี้ ผู้ใช้ที่ใช้งานอยู่แต่ละคนจะมีข้อมูลเซสชันของตนเอง และจะเกี่ยวข้องเฉพาะในช่วงระยะเวลาการทำงานของเขาเท่านั้น หากผู้ใช้ออกจากฐานข้อมูล (สิ้นสุดเซสชัน) ข้อมูลเซสชันของเขาจะถูกลบ ข้อมูลเซสชันจะถูกจัดเก็บไว้ในคลัสเตอร์ของเซิร์ฟเวอร์ โดยผู้จัดการคลัสเตอร์จะรับผิดชอบในเรื่องนี้ และนี่คือสิ่งที่บริการข้อมูลเซสชันมีไว้เพื่อ เพื่อเพิ่มความเร็ว ข้อมูลเซสชันจะถูกแคชไว้ในกระบวนการของผู้ปฏิบัติงานและในไคลเอนต์แบบหนา เมื่อรีสตาร์ทคลัสเตอร์เซิร์ฟเวอร์ ข้อมูลเซสชันจะถูกเก็บรักษาไว้ หากผู้ใช้ที่ใช้งานอยู่ไม่ได้ทำการเรียกคลัสเตอร์เพียงครั้งเดียวภายใน 20 นาที และเซสชันไม่ได้ถูกกำหนดให้กับการเชื่อมต่อ เซสชันจะถูกลบพร้อมกับข้อมูล เพื่อรักษาเซสชั่น ไคลเอนต์แบบบางและเว็บไคลเอ็นต์ให้การเข้าถึงคลัสเตอร์อย่างน้อยหนึ่งครั้งทุกๆ 10 นาที การเชื่อมต่อ 1Cตอนนี้เรามาทำความเข้าใจแนวคิดเรื่องการเชื่อมต่อกัน มาดูคู่มือผู้ดูแลระบบอีกครั้ง: การเชื่อมต่อเป็นวิธีการเข้าถึงเซสชันไปยังคลัสเตอร์ของเซิร์ฟเวอร์ 1C:Enterprise ซึ่งมีชุดข้อมูลการเชื่อมต่อที่จำกัด และไม่ได้ระบุตัวตนกับผู้ใช้ที่ใช้งานอยู่ กล่าวอีกนัยหนึ่ง การเชื่อมต่ออนุญาตให้เซสชันเข้าถึงคลัสเตอร์ได้ ในกรณีนี้ จำนวนการเชื่อมต่อจะถูกจำกัด และทันทีที่เซสชันไม่ต้องการอีกต่อไป การเชื่อมต่อก็จะถูกส่งกลับไปยังพูลการเชื่อมต่อ หากเซสชันไม่ได้เข้าถึงคลัสเตอร์ นั่นคือ ผู้ใช้ไม่ได้ใช้งาน การเชื่อมต่อจะไม่ถูกกำหนดให้กับเขา ดังนั้น เซสชันจึงสามารถดำรงอยู่ได้โดยไม่ต้องเชื่อมต่อ ควรสังเกตว่าข้อมูลเซสชันถูกเก็บไว้บนเซิร์ฟเวอร์ ดังนั้นหากการเชื่อมต่อขาดหายไปเป็นเวลาน้อยกว่า 20 นาที สิ่งนี้จะไม่ส่งผลกระทบต่อเซสชัน เนื่องจากการเชื่อมต่อเป็นเพียงวิธีการเข้าถึง เช่น หากคุณเผลอดึงออกมา สายเคเบิลเครือข่ายผู้ใช้จะไม่ได้รับข้อความแสดงข้อผิดพลาดหากเชื่อมต่อสายเคเบิลภายใน 20 นาที ในกรณีนี้ เซสชันจะได้รับการกำหนดการเชื่อมต่อใหม่และทำงานต่อไป ผู้ใช้จะไม่ทราบถึงปัญหาด้วยซ้ำ ยกเว้นว่าอาจจะเกิดการค้างเล็กน้อย การเชื่อมต่อยังใช้เพื่อสื่อสารระหว่างกระบวนการคลัสเตอร์ นั่นคือ กระบวนการของผู้ปฏิบัติงาน (rphost) สื่อสารกับตัวจัดการคลัสเตอร์ (กระบวนการ rmngr) โดยใช้การเชื่อมต่อ แทนที่จะใช้เซสชัน ความแตกต่างระหว่างการเชื่อมต่อและเซสชันเพื่ออธิบายความแตกต่างที่สำคัญระหว่างแนวคิดเหล่านี้ เราจะให้การเปรียบเทียบ สมมติว่าเซสชั่นเป็นผู้โดยสารและการต่อเครื่องคือแท็กซี่ เมื่อผู้โดยสารจำเป็นต้องกลับบ้าน (เซสชั่นจำเป็นต้องเชื่อมต่อกับเซิร์ฟเวอร์) ผู้โดยสารจะเรียกแท็กซี่ (เซสชั่นถูกกำหนดการเชื่อมต่อจากพูลการเชื่อมต่อ) หากถึงบ้านแล้วผู้โดยสารต้องการไปทำงานอีกครั้ง แต่แท็กซี่ออกไปแล้ว (หลังจากเชื่อมต่อการเชื่อมต่อถูกตัดการเชื่อมต่อ) ผู้โดยสารจึงเรียกรถแท็กซี่ใหม่และไปทำธุรกิจของเขา (การเชื่อมต่อใหม่ได้รับมอบหมายให้ เซสชัน) การเปรียบเทียบนี้แสดงให้เห็นอย่างชัดเจนว่าเซสชันและการเชื่อมต่อไม่เหมือนกัน และเซสชันสามารถรอดพ้นจากการขาดการเชื่อมต่อได้อย่างง่ายดาย เบอร์มิสตรอฟ อันเดรย์ ในการดำเนินการบำรุงรักษาตามปกติในฐานข้อมูล 1C:Enterprise 8 มักจำเป็นต้องได้รับการเข้าถึงฐานข้อมูลแบบเอกสิทธิ์เฉพาะบุคคล ตัวอย่างเช่น หากต้องการสำรองฐานข้อมูลหรือบำรุงรักษาตามปกติบนเซิร์ฟเวอร์ DBMS (การจัดทำดัชนีใหม่ ฯลฯ) คุณต้องยกเลิกการเชื่อมต่อเซสชันที่ใช้งานอยู่ทั้งหมด มาดูวิธีง่ายๆ ในการยกเลิกการเชื่อมต่อผู้ใช้จากฐานข้อมูลโดยใช้ฟังก์ชันมาตรฐานของเซิร์ฟเวอร์ 1C:Enterprise ฟังก์ชั่นมาตรฐานฉันขอจองทันทีว่าเราจะพูดถึง 1C:Enterprise 8 เวอร์ชันไคลเอ็นต์-เซิร์ฟเวอร์ หากต้องการปิดใช้งานเซสชัน ไปที่คอนโซลการดูแลระบบเซิร์ฟเวอร์ ที่นั่นเราจะพบฐานข้อมูลที่จำเป็นในรายการ: โดยไปที่คุณสมบัติความปลอดภัยของข้อมูล ให้ตั้งค่าตัวเลือก “เปิดใช้งานการบล็อกการเริ่มต้นเซสชัน” ในกรณีนี้ คุณอาจต้องระบุข้อมูลเข้าสู่ระบบ/รหัสผ่าน บัญชีผู้ดูแลระบบฐานข้อมูล อย่าลืมตั้งระยะเวลาล็อคเซสชั่น คุณควรตรวจสอบให้แน่ใจด้วยว่าในขณะที่เซสชันถูกบล็อก คุณต้องหยุดทั้งหมด งานพื้นหลัง- ทำได้โดยใช้ตัวเลือก "เปิดใช้งานการบล็อกงานประจำ" หากจำเป็น คุณสามารถตั้งค่าข้อความของข้อความให้กับผู้ใช้ที่พวกเขาจะได้รับแจ้ง 5 นาทีก่อนที่เซสชันจะถูกบล็อก รวมถึงรหัสอนุญาตสำหรับการเข้าสู่ฐานข้อมูลในช่วงระยะเวลาการบล็อกเซสชัน รหัสอนุญาตสามารถใช้เพื่อเข้าสู่ฐานข้อมูลเพื่อดำเนินการบำรุงรักษาตามปกติในขณะที่เซสชันอื่นไม่ได้ใช้งาน คุณต้องป้อนรหัสอนุญาตเมื่อเชื่อมต่อกับฐานข้อมูลโดยใช้พารามิเตอร์ ตัวอย่างเช่น นี่คือลักษณะที่พารามิเตอร์ที่ส่งไปยังเซิร์ฟเวอร์จะมีลักษณะเช่นนี้ หากรหัสสิทธิ์คือ "123456" โดยการเข้าสู่ฐานข้อมูลด้วยวิธีนี้ เราจะได้รับการเข้าถึงฐานข้อมูลแต่เพียงผู้เดียว เซสชันอื่นจะไม่สามารถเข้าร่วมกับเราได้ การแจ้งเตือนผู้ใช้ว่าเซสชันถูกบล็อกมีลักษณะดังนี้ (ขึ้นอยู่กับข้อความที่ผู้ดูแลระบบป้อน) จะปรากฏทุกนาที 5 นาทีก่อนช่วงเวลาปิดกั้น เมื่อระยะเวลาการบล็อกเซสชันเริ่มต้นขึ้น การแจ้งเตือนจะปรากฏขึ้นก่อน: หลังจากนั้นเซสชั่นจะสิ้นสุดลง เซสชันที่ใช้งานอยู่สามารถปิดใช้งานได้โดยลบออกจากรายการเซสชันที่ใช้งานอยู่ การดำเนินการนี้บางครั้งจำเป็นเพื่อยุติเซสชันที่หยุดทำงาน ในทางปฏิบัติ ควรแจ้งล่วงหน้าเกี่ยวกับการขาดการเชื่อมต่อของผู้ใช้ล่วงหน้าเพื่อลดความเสี่ยงในการสูญเสียข้อมูลที่ผู้ใช้ป้อนแต่ยังไม่ได้บันทึก |
อ่าน: |
---|
ใหม่
- หากรองเท้าไม่พอดีกับ Aliexpress: การกระทำที่ถูกต้องในกรณีนี้ ผลิตภัณฑ์ Aliexpress มีขนาดที่เหมาะสม
- ข้อพิพาทใน AliExpress เข้าร่วมข้อพิพาทใน AliExpress
- 3 ฐานข้อมูลแบบกระจาย
- ผู้จัดการเนื้อหา - ความรับผิดชอบ เงินเดือน การฝึกอบรม ข้อเสียและข้อดีของการทำงานเป็นผู้เชี่ยวชาญด้านเนื้อหา
- จะป้องกันตัวเองจากการขุดที่ซ่อนอยู่ในเบราว์เซอร์ของคุณได้อย่างไร?
- การกู้คืนรหัสผ่านใน Ask
- วิธีเปิดกล้องบนแล็ปท็อป
- ทำไมเพลงไม่เล่นบน VKontakte?
- วิธีเพิ่มขนาดของไดรฟ์ C โดยเสียค่าใช้จ่ายของไดรฟ์ D โดยไม่สูญเสียข้อมูล
- สาเหตุของการทำงานผิดพลาดบนเมนบอร์ด หากชิปเซ็ตบนเมนบอร์ดเกิดไฟไหม้