BMS-HOSxP Community
HOSxP => แจ้งปัญหา / ขอความช่วยเหลือ => ข้อความที่เริ่มโดย: anukul ที่ พฤษภาคม 14, 2007, 23:13:32 PM
-
เพิ่ง up ver เป็น 50.4.10 เมื่อคืนวันศุกร์ที่ผ่านมา วันหยุดใช้งาน ไม่ค่อยพบปัญหาครับ
แต่พอเช้าวันจันทร์ เจอปัญหาที่ห้องตรวจครับ
1.ผป.นัด แล้วมาตรงวันนัด เวลาที่เรียกชื่อขึ้นมาตรวจ จะมี pop up "เตือนรายการนัดวันนี้ให้" เดิมกดปุ่ม Enter หรือกด ตกลง ก็จะหลุดออกไปให้ตรวจได้ แต่ ตอนนี้ พบว่า จะวนลูป แล้วแฮงเลยบางครั้ง ทำงานต่อไม่ได้ ต้องใช้วิธี กด X ปิด มุมขวาบนแทน จึงจะหลุดออกไปตรวจได้ครับ
2.เวลาเรียกคนไข้มาบางครั้งหน่วง มาก เปิด SQL Trace ดู เห็นว่า table OVST มักจะใช้เวลานาน (ส่ง transaction มาให้ช่วยดูด้วยครับ)
3.รู้สึกว่าจะมีปัญหา กับผป.นัด ค่อนข้างมาก เช่น จำนวนผป.นัด ที่หน้ารอตรวจ ด้านล่าง แสดงแค่ 1 ราย มาตามนัด - ราย (ทั้งๆที่ ในตารางนัด มี 38 ราย)
หมายเหตุ : ผมเปลี่ยนเครื่อง server แต่ spec ใกล้เคียงของเดิม (ดีกว่าเล็กน้อย) และ ใช้ MySQL 5.0.37 เลย ก่อน initial import ข้อมูลจากตัวเดิม แล้วค่อย upgrade structure ที่ตัวใหม่ครับ
-
เปลี่ยนตาราง ovst เป็น Innodb หรือยังครับ
-
ส่วน error ที่เกิดในห้องตรวจแพทย์ น่าจะเกิดจากเหตุการณ์เกิดซ้อนกันครับ คือ พอแพทย์คลิกเลือกผู้ป่วยแล้ว โดยปกติระบบจะแสดงข้อมูลผู้ป่วยทันที แต่เข้าใจว่าระบบยังรอข้อมูลจากเครื่อง server อยู่ ทำให้แพทย์เลือกผู้ป่วยซ้ำครับ
จำนวนผู้ป่วยที่นัดมาในวัน โปรแกรมใช้คำสั่งนี้ครับ
select count(*) as cc from oapp where nextdate = 'yyyy-mm-dd' and doctor = 'doctor_code'
-
ยังไม่ได้ up เป็น innodb เลยครับ
แต่ตอนที่ใช้อาทิตย์ที่แล้ว ver เดิม ไม่เคยช้าอย่างนี้ครับ
(เอ แล้ว up innodb ขณะทำงานได้มั๊ย โดยไม่ต้องหยุดระบบ MySQL 5.0.37)
ใช้ SQL ดู จำนวนผป.นัด แล้ว ก็มี 38 ราย ครับ แต่ที่หน้าจอ ผู้ป่วยรอตรวจ ด้านล่างยังขึ้นแค่ 1 ราย
สังเกตุ เห็นว่า CPU server ทำงานค่อนข้างหนัก กว่าตอนใช้ ver เดิม
-
ส่งแฟ้ม /etc/my.cnf เข้ามาด้วยครับ
-
ลอง upgrade เฉพาะ ovst เป็น innodb ที่หน้าจอนี้ครับ
(ไม่ต้องหยุดระบบ)
-
นี่ครับ my.cnf
รู้สึกว่า ผมจะปรับ เพิ่มบรรทัด max-connection='300'
และ เพิ่ม config innodb ไว้ (ที่แตกต่างจาก server เดิม)
-
เครื่อง server ram เท่าไหร่ครับ
-
ลองปรับแบบนี้ แล้ว restart mysql ครับ
-
ECC RAM 1G. x 4 = 4G. ครับ
CPU : Double Xeon 3.2 GHz
HDD : SCSI 10000 rpm 72G. x 2 (set RAID 1)
เดี๋ยวจะลอง restart MySQL ครับ
-
ตาม อ.mn แรม server ต้อง 4 GB ขึ้นไปใช่ไหมครับ
-
config ข้างบน ผมนึกว่า RAM 2 Gb ครับ แต่คิดว่าคงทำให้เร็วขึ้นได้ครับ
-
เดี๋ยวคงต้องรอดูอีกที พรุ่งนี้เช้าครับ เพราะนอกเวลาถ้าแพทย์ใช้งานน้อยคน ก็ไม่ค่อยมีปัญหา แต่ถ้าใช้หลายห้องตรวจ (ตอนเช้าใช้กันประมาณ 10 กว่าห้อง) จะช้ามาก รวมทั้งห้องฟันด้วยครับ
อีกเรื่อง คือ ระบบนัด ดูรวนๆ โดยเฉพาะเวลาส่งตรวจ ผป.นัด ซึ่งมีสั่ง lab นัด ด้วย จะช้ามาก เกือบทุกคน
จริงๆ ผมอยากลอง upgrade structure ดูอีกครั้ง เพราะ ครั้งนี้ up ข้ามหลาย ver มาก จาก 2.49.9.13 มาเป็น 3.50.4.10 (เวลาที่ใช้ในการ upgrade structure ประมาณ เกือบ 5 ชั่วโมง ตั้งแต่ ตี 2 กว่า ถึง หกโมงครึ่ง กว่าจะเสร็จ) ...... ดีมั๊ยครับ .......
ขอบคุณมากครับ
-
แก้ไขจำนวนผู้ป่วยนัดที่หน้าจอห้องตรวจให้แล้วครับ เกิดจากระบบนำจำนวนผู้ป่วยที่มาตามนัด มาใส่แทนผู้ป่วยที่นัดมาทั้งหมดครับ
-
ลองอีกครั้งก็ได้ครับ แต่คงใช้เวลาไม่นานมากครับ
-
ปัญหา หน้าต่าง pop up แจ้งการนัดวันนี้ เวลาที่เรียกชื่อผป.มาตรวจ แล้ววน ออกไม่ได้ ....
ผมลองดูแล้ว พบว่า ถ้าเรา เลือก หน้าจอแรกเมื่อเลือกคนไข้ ---> ข้อมูลซักประวัติ จะเกิดปัญหาที่แจ้งครับ
แต่ถ้าเลือกอันอื่น เช่น หน้าสั่งเวชภัณฑ์ หรือหน้าประวัติการรักษา หรือหน้าวินิจฉัย จะไม่เกิดปัญหาที่แจ้งครับ
พอดีผมเลือก ดูข้อมูลซักประวัติ เป็นหน้าจอแรก เลยเจอปัญหาครับ
-
ผมได้ ปรับตาราง ovst เป็น innodb ตามตัวอย่างแล้ว (ทำใน safe alter)
แต่พอเรียกให้แสดง ตาราง innodb กลับ ไม่พบเลย
ลองเข้าใน SQL show create table ovst -->
CREATE TABLE `ovst` (
`hos_guid` varchar(38) NOT NULL default '',
`vn` varchar(13) default NULL,
`hn` varchar(9) default NULL,
`an` varchar(9) default NULL,
`vstdate` date default NULL,
`vsttime` time default NULL,
`doctor` varchar(7) default NULL,
`hospmain` varchar(5) default NULL,
`hospsub` varchar(5) default NULL,
`oqueue` int(11) default NULL,
`ovstist` char(2) default NULL,
`ovstost` varchar(4) default NULL,
`pttype` char(2) default NULL,
`pttypeno` varchar(50) default NULL,
`rfrics` char(1) default NULL,
`rfrilct` varchar(5) default NULL,
`rfrocs` char(1) default NULL,
`rfrolct` varchar(5) default NULL,
`spclty` char(2) default NULL,
`rcpt_disease` varchar(100) default NULL,
`hcode` varchar(5) default NULL,
`cur_dep` char(3) default NULL,
`cur_dep_busy` char(1) default NULL,
`last_dep` char(3) default NULL,
`cur_dep_time` time default NULL,
`rx_queue` int(11) default NULL,
`diag_text` varchar(250) default NULL,
`pt_subtype` tinyint(4) default NULL,
`main_dep` char(3) default NULL,
`main_dep_queue` int(11) default NULL,
`finance_summary_date` date default NULL,
`visit_type` char(1) default NULL,
`node_id` char(1) default NULL,
`contract_id` int(11) default NULL,
`waiting` char(1) default NULL,
`rfri_icd10` varchar(6) default NULL,
`o_refer_number` int(11) default NULL,
`has_insurance` char(1) default NULL,
`i_refer_number` varchar(25) default NULL,
`refer_type` char(1) default NULL,
`o_refer_dep` varchar(5) default NULL,
`staff` varchar(10) default NULL,
`command_doctor` varchar(6) default NULL,
`send_person` varchar(150) default NULL,
`pt_priority` char(1) default NULL,
`finance_lock` char(1) default NULL,
PRIMARY KEY (`hos_guid`),
UNIQUE KEY `ix_unique` (`vn`),
KEY `ix_hn` (`hn`),
KEY `ix_an` (`an`),
KEY `ix_vstdate` (`vstdate`),
KEY `ix_pttype` (`pttype`),
KEY `ix_hn_vstdate` (`hn`,`vstdate`),
KEY `ix_doctor` (`doctor`),
KEY `ix_hcode` (`hcode`),
KEY `ix_o_refer_number` (`o_refer_number`),
KEY `ix_spclty` (`spclty`),
KEY `ix_staff` (`staff`)
) ENGINE=MyISAM DEFAULT CHARSET=tis620
เลยไม่รู้ว่า ตอนนี้มันเป็น MyISAM หรือ Innodb เพราะตอนสั่งก็ไม่มีอาการผิดปกติอะไร