Posts tagged: แอพลิเคชัน

"เข้าสู่ระบบ Twitter" ใช้ Zend Framework

โดย วันพฤหัสบดีที่ 17 มีนาคม 2011 01:07 น.

แม้ทุก ความเกลียดชัง Twitter ในขณะนี้ผมได้ออกเดินทางไปสร้างใหม่ที่ เบาและ แอพลิเคชันที่ใช้ เป็นคนที่จัดการบัญชีต่างๆ (ทั้งส่วนบุคคลและสำหรับการทำงานการกุศลของฉัน) ฉันได้รับการจำเป็นต้องใช้เครื่องมือสำหรับบางครั้งที่ฉันแค่รับรอบการเขียน (เพิ่มเติมจากที่ในอนาคตอันใกล้ ... )

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

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

ทางเลือกที่ได้ถูกพัฒนาเข้าสู่ระบบเว็บไซต์ที่ใช้ในการจัดเก็บหรืออย่างใดโทเค็นการเข้าถึงของผู้ใช้บนไคลเอนต์ (เข้ารหัสของหลักสูตร) ทั้งของเหล่านี้ดูเหมือนเป็นทางออกที่ดี / เหมาะสม

อ่านต่อ '"เข้าสู่ระบบ Twitter" ใช้ Zend Framework' »

Naked Zend_Layout และ Zend_View

โดย , อังคาร 10 สิงหาคม 2010 23:47

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

ดำเนินการต่อ 'Zend_Layout Naked และ Zend_View' การอ่าน»

รูปแบบการออกแบบ PHP - รูปแบบสังเกตการณ์

โดย , อังคาร 29 ธันวาคม 2009 22:02

ฉันได้อ่าน รูปแบบการออกแบบเฮดครั้งแรก เมื่อเร็ว ๆ นี้และมีการตัดสินใจที่จะเขียนบางส่วนของรูปแบบการเป็นตัวอย่าง PHP เพื่อประโยชน์ของตัวเอง คนแรกที่ฉันได้ตัดสินใจที่จะขึ้นเป็นรหัส รูปแบบสังเกตการณ์ . ความหมายอย่างเป็นทางการของรูปแบบสังเกตการณ์คือ:

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

ในฐานะที่เป็นระบบเป็นคู่มากขึ้นอย่างอิสระเพื่อให้แน่ใจว่าเมื่อมีเหตุการณ์เกิดขึ้นทุกระบบที่ต้องใช้ความรู้จากการปรับปรุงเหล่านี้จะได้รับแจ้ง ตัวอย่างเช่นบล็อกโพสต์หลังจากการบันทึกการโพสต์ที่เราอาจจำเป็นต้องปรับปรุงเครื่องมือค้นหา (เช่น Lucene), update sitemap, แท็กของเราผู้ใช้ที่สมัครเป็นสมาชิกส่งอีเมล์และอื่น ๆ รูปแบบสังเกตการณ์จะช่วยให้นักพัฒนาสามารถเพิ่มฟังเพิ่มเติมได้โดยไม่ต้องแก้ไขวัตถุที่สังเกตได้ของพวกเขา . โดยการฉีดสังเกตการณ์ (เช่นเครื่องมือค้นหาผู้สังเกตการณ์การปรับปรุงเครื่องกำเนิดไฟฟ้า sitemap, ฯลฯ ) ในเรื่อง (บล็อกโพสต์ในระบบเช่นการแก้ไข) เราสามารถช่วยให้มันเพื่อดำเนินการทั้งหมดปรับปรุงที่จำเป็นโดยไม่มีการเปลี่ยนแปลงใด ๆ

อ่านต่อ 'PHP การออกแบบรูปแบบ - รูปแบบสังเกตการณ์' »

การคำนวณตาราง Office ที่ใช้สภาพแวดล้อมเสมือนจริง - ส่วนที่ 3

โดย , วันศุกร์ 4 ธันวาคม 2009 23:37

การแนะนำ

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

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

การตั้งค่าของผู้ปฏิบัติงานของคุณ - หรือเซิร์ฟเวอร์ Limp

ขั้นตอนถัดไปในกระบวนการคือการตั้งค่าแรงงานเสมือนของคุณ สำหรับนี้ฉันจะใช้การติดตั้ง CentOS ใช้ VirtualBox ฉันกำลังจะไปติดตั้ง mySQL และ PHP บนเซิร์ฟเวอร์ที่เรียกว่าเป็น Limp (nux ​​Li, ม. ySQL, P HP) Servera (ฉันอาจจะทำให้ชื่อที่ขึ้นไป)

  • ติดตั้ง VirtualBox ในเครื่องหน้าต่างของคุณ (ตามลิงก์)
  • ดาวน์โหลดและติดตั้ง CentOS (ปัจจุบัน 5.3 รุ่น) ภายในเครื่องเสมือนที่สร้างขึ้น

มีจุดให้ฉันไปนี้อาจมีใน 1,000 ของบทเรียนที่ดีออกมี (: ok ที่นี่ไม่มีใครที่ สร้างและเครื่องManaging CentOS เสมือนภายใต้ VirtualBox ) จุดสำคัญที่ควรทราบก็คงจะเป็นที่ฉันเรียกว่าเครื่อง GridMachine ของฉันเสมือน

เท่าที่ฉันมีทางเลือกของลูกค้า virtualisation และระบบปฏิบัติการไปที่นั่นไม่มีเหตุผลที่น่าสนใจมากสำหรับแต่ละทางเลือกคือ VirtualBox เป็นสิ่งที่ผมใช้ในเครื่องที่บ้านของฉันและได้รับการสนับสนุนโดยสามระบบปฏิบัติการหลัก ผมเลือก CentOS เป็นระบบปฏิบัติการที่มีเสถียรภาพที่ดีและฉันจะใช้มันบนเว็บเซิร์ฟเวอร์ของตัวเอง ผมเชื่อในเครื่องมือที่เหมาะสมสำหรับงาน (แม้ว่าฉันใช้ 'ใช้เร็วและง่ายที่สุดสำหรับคุณ' ความคิดที่นี่) ดังนั้นหากระบบปฏิบัติการที่ทำงาน X รหัสของคุณที่รวดเร็วและมีประสิทธิภาพมากขึ้นใช้ที่แทน :)

ที่สำคัญตรวจสอบให้แน่ใจว่า VM ของคุณใช้ DHCP มิฉะนั้นสำหรับเครื่องเสมือนแต่ละรุ่นใหม่จะต้องมีการกำหนดค่าแยกกันซึ่งเป็นสิ่งที่เราไม่ได้ใช้ DHCP want.By เราไม่จำเป็นต้องตั้งค่าเครือข่ายแต่ละเครื่องของผู้ปฏิบัติงาน, DHCP จะมือ ออก IPs สำหรับคุณ ดังนั้นคุณสามารถคัดลอกเสมือนเครื่องของคุณเกี่ยวกับสำนักงานโดยไม่ต้องกังวลเกี่ยวกับการตั้งแต่ละคนขึ้นไป (scalability นี้ดีขึ้นและช่วยลดการบริหารงานของผู้ปฏิบัติงาน)

ขั้นตอนที่คุณควรมุ่งมั่นเพื่อให้บรรลุจะได้รับเครื่องกายภาพใหม่ที่ติดตั้ง VirtualBox แล้วสวยมากปรับใช้รูปแบบเสมือนได้โดยไม่ต้องมากอื่น มันอาจจะฉลาดในการติดตั้งคนงานทั้งหมดของคุณบนเครือข่ายย่อยที่แตกต่างกันเพื่อให้คุณอย่างน้อยสามารถดูวิธีการหลายเครื่องกำลังทำงาน คุณยังจะต้องตั้งค่าเครื่องของคุณเกี่ยวกับสัญญาเช่าระยะยาวหรือไม่ จำกัด เช่า DHCP

วิธีการเรียกใช้งานเมื่อผู้ปฏิบัติงาน

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

  • ตลอดการเรียกใช้สคริปต์: สคริปต์ไม่ว่าจะเป็นสคริปต์เปลือกหรือสคริปต์ PHP จะถูกดำเนินการครั้งเดียวในผู้ปฏิบัติงานและการทำงานเป็นส่วนหนึ่งของวง จำกัด ผมเคยลดวิธีการนี​​้เป็นหนึ่งในความผิดพลาดของสคริปต์และอาจแรงงานของคุณจะหยุดทำงานโดยไม่ต้องเรียงลำดับของการแทรกแซงบาง
  • การดำเนินการตามสคริปต์ Cron: ทุกนาที X ภูต cron kicks ปิดสายไปยังสคริปต์ของคุณที่จะได้รับสิ่งที่จะ โดยไม่ตรวจสอบบางส่วนนี้อาจนำไปสู่​​หลายสำเนาหลายของสคริปต์ของคุณทำงานของผู้ปฏิบัติงาน

การตัดสินใจของฉันคือการที่จะไปกับ cron ซึ่ง kicks ปิดเชลล์สคริปต์ทุก 10 minutes.Âเชลล์สคริปต์ของฉันดำเนินงานต่อไปนี้:

  1. รับรายชื่อกระบวนการและ grep นี้สำหรับ 'PHP' หากไม่พบแล้วดำเนินการต่อ
  2. เรียกรหัสงานของคุณในกรณีของฉันนี้จะเป็นบางสิ่งบางอย่างจาก PHP
  3. สคริปต์ทำงานเสร็จสิ้นการทำงานของมัน
  4. พร้อมที่จะไปอีกครั้งเมื่อสายที่เหมาะสมต่อไป

สคริปต์ทุบตีฉันมีลักษณะบางอย่างเช่นต่อไปนี้:

  #! / bin / sh
 ถ้า PS ขวาน | grep-V grep | grep PHP> / dev / null
 แล้ว
     echo "งานอยู่ในขณะนี้การประมวลผลที่ออก"
 อื่น
     echo "งานไม่ทำงานเริ่มต้นตอนนี้"
     yourJobProcessingScript.php PHP
 สาย 

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

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

การตั้งค่าของ Windows เพื่อเริ่มต้นได้ใช้แรงงาน

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

  "C: \ Program Files \ อาทิตย์ \ VirtualBox \ VBoxManage.exe" GridMachine startvm 

อย่างไรก็ตามการเรียกใช้สคริปต์ในรัฐหัวขาด 'เราจำเป็นต้องใช้:

  "C: \ Program Files \ อาทิตย์ \ VirtualBox \ VBoxHeadless.exe"-startvm GridMachine - vrdp = off 

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

ต่อไปเราจะต้องตั้งค่าหน้าต่างขึ้นไปเตะปิด VM ของผู้ปฏิบัติงานของเราเมื่อเครื่องไม่มีการใช้งาน การทำเช่นนี้ (ใน Windows XP) คุณจะต้องไปที่ Start -> โปรแกรมทั้งหมด -> Accessories -> เครื่องมือระบบ -> งานที่กำหนดเวลาดังนี้

งานที่กำหนดเวลา

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

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

ในที่สุด untick ตัวเลือกที่ระบุหยุดงานหากได้รับการทำงานจำนวนครั้ง แต่ไม่ติ๊กเลือกที่จะหยุดงานถ้าเครื่องไม่ได้ใช้งาน

กำหนด

นั่นแหล่ะแล้วสำหรับการตั้งค่าโฮสต์ Windows!

ข้อมูลอย่างย่อ

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

ครั้งต่อไป

ใน ส่วนที่ 4 เราจะมองที่การใช้เครื่องมือเพื่อให้แน่ใจว่าคุณใช้รุ่นล่าสุดของแหล่งที่มารหัสและข้อมูลเพื่อให้ผลลัพธ์ที่ได้มักจะ up-to-date ด้วยข้อมูลทางธุรกิจใหม่ล่าสุดและตรรกะ

การคำนวณตาราง Office ที่ใช้สภาพแวดล้อมเสมือนจริง - ส่วนที่ 2

โดย , วันศุกร์ 4 ธันวาคม 2009 11:23

การแนะนำ

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

ใน ส่วนที่ 1 ผมให้ภาพรวมของระบบและเทคโนโลยีที่ฉันจะใช้เช่นกันตามที่กล่าวไว้บางส่วนของเหตุผลที่มีศักยภาพว่าทำไมคุณต้องการที่จะสร้างตารางสำนักงาน

การควบคุมงาน

หากคุณกำลังจะใช้งานแล้วคุณจะต้องมีวิธีบางอย่างเพื่อจัดการกับพวกเขา ระบบการควบคุมงานของคุณ (บนเซิร์ฟเวอร์งานของคุณ) จะต้องคิดดีจริงๆที่ออกมาก่อนแม้กระทั่งความพยายามที่จะเรียกใช้ตารางสำนักงาน ดังนั้นประการแรกสิ่งที่งานสำหรับระบบการควบคุมงานดังนี้:

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

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

เซิร์ฟเวอร์งาน

เรากำลังจะต้องอยู่ที่ไหนสักแห่งในการควบคุมงานของเราจากนี้ควรจะเป็นระบบเดียวในตารางของคุณที่มี Resource Locator คงเป็นที่อยู่ IP, ชื่อโฮสต์ URL (ใช้ภายใน DNS) เป็นต้นทั้งนี้เป็นเพราะ คนงานจำเป็นต้องรู้ที่จะมองหางานหรือผู้ปฏิบัติงานจำเป็นต้องค้นหาระบบการควบคุมงาน (ไม่ระบบการควบคุมงานหาคนงาน)

เซิร์ฟเวอร์งานตัวเองไม่ได้จริงๆมีงานที่ซับซ้อน (ในระบบขั้นพื้นฐาน แต่อย่างใด) จะต้องจัดเก็บรายชื่อของงาน, มือออกงานได้รับผลและต่อมาเก็บไว้เพื่อเรียกใช้ในภายหลัง วิธีการชิ้นส่วนเหล่านี้ ('มือออกงาน' เช่น) มีการกำหนดสามารถเป็นพื้นฐานมาก ต่อมาเมื่อเราสามารถขยายระบบอินเตอร์เฟซที่จะรวมการบริหารงานเพื่อเพิ่ม, แก้ไข, ลบ, ระงับการงาน แต่นี้อยู่นอกเหนือการออกกำลังกายนี้

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

การติดตั้งขั้นพื้นฐาน

การตั้งค่าพื้นฐานสำหรับเซิร์ฟเวอร์งานของเราจะประกอบด้วยสิ่งที่ฉันเรียกอย่างใดอย่างหนึ่งของเซิร์ฟเวอร์ปวกเปียกของฉัน (ที่เป็น nux Li, ม. ySql, P HP) รหัสที่ใช้ในงาน Thea จริงจะทำงานออกมาว่างานที่จะสามารถทำงานโดยการติดต่อกับฐานข้อมูลที่มีงานระบบการควบคุม ต่อมาเมื่อเราสามารถสร้างบริการเว็บและมือจริงออกงานมากกว่าที่มีคนงานจะทำงานหนักของตัวเอง แต่ตอนนี้เราจะยังคงใช้ หลักการ KISS (Keep มัน Simple, Stupid!)

ดังนั้นจะช่วยให้สร้างสาม mySQL ตารางที่จะจัดการกับงาน เหล่านี้จะเป็นงาน ``, `` jobRecords และ jobResults `

ตารางงาน ที่นี่ผมใช้ SQL บัดดี้ ทางเลือกน้อยมากที่จะ phpMyAdmin เพียงเพราะมันง่ายต่อการติดตั้งบน CentOS (สำหรับคนอื่น ๆ ดูที่: 10 ทางเลือกที่ดีในการ phpMyAdmin )

ตารางนี้จะประกอบด้วย 5 ฟิลด์ง่าย

  • ID: ระบุตัวตนของงาน
  • ชื่อ: สามารถเป็นลูกค้าอ้างอิงหรือหมายเลขของตัวระบุอื่น ๆ
  • สถานะ: คุณจำเป็นต้องรู้ว่างานเป็นที่เช่น
    • 0: ยังไม่ได้เริ่มต้น
    • 1: ที่เลือกขึ้น
    • 2: สำเร็จแล้ว
  • started_by: ใครเริ่มทำงานหรือไม่ นี้ไม่จำเป็นอย่างสิ้นเชิง แต่ดีที่มี ผมขอแนะนำให้คนงานติดตามตามที่อยู่ IP ของพวกเขาในเครือข่ายของคุณ
  • started_at: เมื่อไหร่ที่คนงานเริ่มงานหรือไม่ โดยการติดตามงานที่ยังไม่ได้เสร็จสิ้นภายในจำนวนครั้งที่เรารู้ว่าเราต้องไปรับงานอีกครั้งและเริ่มต้นการประมวลผลโดยผู้ปฏิบัติงานอื่น คนงานสามารถหยุดการประมวลผล / go ครับสำหรับจำนวนเหตุผลใด ๆ , ไฟดับ, ความผิดพลาดของการสูญเสียเครือข่ายอื่น ๆ

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

ช่วยเพิ่มตำแหน่งงานตัวอย่างไม่กี่:

ตำแหน่งงานเช่น

ตารางต่อไปอีกครั้งจะค่อนข้างง่ายที่จะเข้าใจเหล่านี้บันทึกงานของเรา พวกเขาจะเชื่อมโยงกับตารางงานหลักตามคอลัมน์ `jobs_id` ทำขึ้นจากตารางนี้มากขึ้นอยู่กับข้อมูลที่คุณจำเป็นต้องจ่ายให้กับคนงานของคุณจะช่วยให้ทำตัวอย่างง่ายๆที่เรามีสี่คอลัมน์:

  • ID: ID ของระเบียน
  • ชื่อ: ชื่อของบุคคล
  • ที่อยู่: ที่อยู่ของบุคคล
  • jobs_id: รหัสงานที่บันทึกนี้จะเชื่อมโยงกับ

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

  • job_record_id: Link ผลกับตารางงาน
  • ผล: ข้อมูลผลการ

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

การเลือกงาน

ตามที่ระบุไว้ก่อนหน้านี้คนงานจะดำเนินการจัดการงานของเราสำหรับเราในขณะนี้ดังนั้นเราต้องทำจริงๆคือการหางานที่ต้องการการประมวลผลและได้รับข้อมูล วิธีที่เราจะทำเช่นนี้? ดีเลือกเกณฑ์การเลือกงานของเราและมองหางานใน SQL ที่ฉันได้ดังต่อไปนี้:

  1. ใช้งานใด ๆ ที่ไม่ได้ทำเครื่องหมายว่าเ​​สร็จสมบูรณ์ แต่จากคนงานของเราและตั้งพวกเขา (แทน ME__ __ กับตัวระบุที่ง่ายที่สุดที่จะเป็นที่อยู่ IP):
      UPDATE `ตำแหน่งงานที่ SET` สถานะ `= 0 WHERE` สถานะ `= 1 และ` started_by `= __ ME__; 
  2. โดยใช้เก​​ณฑ์การเลือกงานของเราให้เลือกสมัครงานและบอกระบบการควบคุมที่ผู้ปฏิบัติงานนี้คือการจัดการกับมันได้
      UPDATE `ตำแหน่งงานที่ SET` สถานะ `= 1,` started_by `= __ ME__,` started_at `= NOW () WHERE` สถานะ `= 0 หรือ
     (`สถานะ` = 1 และ `started_at`> DATE_SUB (NOW (), INTERVAL HOUR X)) ORDER BY `id` ASC; 

    โดยงานโลภที่ยังไม่ได้ส่งกลับผลลัพธ์ในจำนวนครั้งที่เรามั่นใจว่างานทั้งหมดจะถูกเรียกใช้ในกรณีที่คนงานทำงานล้มเหลวหรือไป AWOL

  3. ไปคว้ารายละเอียดตำแหน่งงานตามระเบียนของตัวเอง:
      SELECT * FROM `` WHERE งาน `started_by` = __ LIMIT ME__ 1;
     SELECT * FROM `` WHERE job_records `id` = __ JOBID__; 

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

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

การกำหนดค่าสมัครงาน

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

  1. งานใช้เวลา 1 วันในแต่ละที่จะเรียกใช้: นี่หมายความว่าคนงานของคุณต้อง 15 วันในการประมวลผลแต่ละงาน (จำ 10% ของพลังงานสำหรับ 2/3rds ของเวลา) นี้ไม่ชัดเจนการกำหนดค่าที่ฉลาดขนาดงานของคุณเป็นวิธีที่มีขนาดใหญ่เกินไป! มันจะใช้เวลาอย่างน้อยสองครั้งเวลาที่จะได้งานประมวลผลของผู้ปฏิบัติงานที่เริ่มต้นควรจะไป AWOL (เวลาที่จะรับว่ามันไม่ได้กลับผลบวกกับเวลา reprocessing) ในอุดมคติของคุณจะมีอย่างน้อยหนึ่งงานเต็มล้างได้อย่างง่ายดายโดยสิ้นสุดระยะเวลาการใช้งานในแต่ละระยะยาวที่ทางคุณเก็บตำแหน่งงานฟ้องมากกว่าและที่เลวร้ายที่สุดกรณีที่สมัครงานจะใช้เวลาสองวันในการขั้นตอนแรกควรจะไปที่ขาดหายไป
  2. งานใช้เวลา 1 นาทีในการทำงาน: นี่หมายความว่าคนงานของคุณใช้เวลาประมาณ 15 นาทีในการทำงานแต่ละงาน ขณะนี้เริ่มอาจดูเหมือนอุดมคติที่คุณได้รับการประมวลผลการทำงานเพิ่มเติมในช่วงเวลาอาหารกลางวันอาหารว่างการประชุม ฯลฯ สถานการณ์นี้จะทำให้ความเครียดในพื้นที่อื่น ๆ ของระบบของคุณและนำเสนอปัญหาของตัวเอง ตัวอย่างเช่นตอนแรกมีอัตราส่วนการตั้งค่าเวลาของคุณ / การประมวลผลจะไปทางขวาลงดังนั้นการสูญเสียประสิทธิภาพของระบบ เครือข่ายของคุณเป็นไปได้ข้อมูลสตรีมมิ่งงานอย่างต่อเนื่องไปยังเจ้าหน้าที่ผู้ปฏิบัติงานต่างๆที่น่าผิดหวังที่เป็น dong วันของพวกเขาทำงานวัน คุณยังจะวางสายพันธุ์เพิ่มเติมเกี่ยวกับเซิร์ฟเวอร์ในการประมวลผลงานของคุณเป็นมันมีจานออกจำนวนมากและจำนวนชิ้นเล็ก ๆ ของการทำงานเป็นประจำ สุดท้ายในสถานการณ์เช่นนี้หากเซิร์ฟเวอร์สมัครงานของคุณไปลงที่คุณกำลังจะสร้างกลับเข้าสู่ระบบใหญ่ของการทำงานไม่เสร็จสมบูรณ์ในขณะที่งานใหญ่ได้จากการประมวลผลอย่างต่อเนื่องไม่รู้ว่าเซิร์ฟเวอร์สุขสันต์งานได้ประสบปัญหา

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

  • งานขนาดเพื่อให้ผู้ปฏิบัติงานแต่ละคนจะสามารถรับผ่านงาน 3-4 อย่างน้อยก็ในช่วง 15 ชั่​​วโมง (ที่ยาวที่สุดในช่วงเวลาที่จะได้ใช้งาน)
  • เล่นกับขนาดของงานเพื่อให้เวลาการติดตั้งที่เป็นนัยสำคัญอย่างเป็นธรรมเมื่อเทียบกับระยะเวลาในการประมวลผล (คำนึงถึงจุดด้านบน)
  • ถ้างานไม่เสร็จสมบูรณ์ในจำนวนสองเท่าของเวลาที่ (อาจจะน้อยกว่า) ที่คุณคาดหวังที่จะทำให้เสร็จคิดว่า AWOL ไปของมันและเริ่มต้นการประมวลผลแล้วกับคนงานอื่น ซึ่งหมายความว่าคุณอาจต้องรอถึงสามครั้งความยาวปกติของงานมันจะเสร็จสมบูรณ์ (อาจจะนานกว่านั้นหากงานที่ตามมาล้มเหลว) คุณอาจต้องการลดเวลานี้ แต่ระวังไม่ให้ลดมันมากเกินไปในขณะที่คุณอาจเริ่มต้นการทำซ้ำงานการประมวลผลอย่างสม่ำเสมอ
  • งานควรจะเป็นอิสระจากความต้องการภายนอกให้มากที่สุด เซิร์ฟเวอร์งานเช่นควรได้รับการติดต่อในช่วงเริ่มต้นและจุดสิ้นสุดของงานทุก
  • ไม่เปียกโชกเครือข่ายของคุณนี้จะมีสองผลกระทบเชิงลบ, พนักงานกลางวันของคุณจะพบการใช้เครือข่ายทำลายและปัญหาที่เกิดขึ้นอาจจะมีประสบการณ์กับการเชื่อมต่อระยะเวลาออกปัญหาที่จะได้รับที่เลวร้ายยิ่งในขณะที่คุณปรับขนาดตารางของคุณ
  • งานตรวจสอบให้แน่ใจสามารถทำงานบนงานของคุณ ถ้างานที่เป็นหน่วยความจำมากเกินไปงานหนักหรือพื้นที่ว่างดิสก์ที่เข้มข้นจะเริ่มยกเลิกและสิ่งเดียวที่คุณจะสังเกตเห็นเป็นแบบเลื่อนในจำนวนของงานประมวลผลด้วยเหตุผลที่แท้จริงว่าทำไม

ผลการค้นหาจากการส่งงาน

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

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

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

ข้อมูลอย่างย่อ

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

  • เซิร์ฟเวอร์ควบคุมงานบริหารงานและทำให้มั่นใจว่าทุกหน่วยงานจะเสร็จสมบูรณ์
  • โดยการสรุปงานของคุณส่งผลให้เลือก / เราสามารถเปลี่ยนเทคโนโลยีของเซิร์ฟเวอร์ควบคุมได้โดยไม่มีปัญหามาก
  • การกำหนดค่าการงานของคุณเพื่อให้แน่ใจว่าพวกเขาจะทำงานได้อย่างรวดเร็วและมีประสิทธิภาพโดยไม่ต้องใส่ความดันมากเกินไปในโครงสร้างพื้นฐานเครือข่ายของคุณและไม่ซ้ำงานการประมวลผลอย่างสม่ำเสมอ
  • ตรวจสอบให้แน่ใจว่าคุณได้สร้างความผิดพลาดและข้อผิดพลาดcheckingÂเป็นประจำของคุณหรือผู้ปฏิบัติงานสามารถระงับและดำเนินการและส่วนใหญ่ไม่สะดวกครั้ง อย่าลืมตรวจสอบว่าผลที่ได้รับอยู่แล้วการแสดงความคิดเห็นของผู้ปฏิบัติงานอื่น

ครั้งต่อไป

ใน ส่วนที่ 3 เราจะสร้างเครื่องประมวลผลของเราเสมือนและการตั้งค่าเครื่อง Windows ของเราที่จะกลายเป็นแรงงานไม่ได้ใช้งานตลอดเวลา

Zend Framework: ความรู้พื้นฐาน - รีวิว

โดย , เสาร์ 28 พฤศจิกายน 2009 22:42

นายจ้างของฉันจ่ายเมื่อเร็ว ๆ นี้สำหรับกลุ่มของนักพัฒนาเราจะใช้ Zend Framework: ความรู้พื้นฐาน การเรียนที่นี่ผมจะสรุปความคิดและความคิดเห็นของฉันเกี่ยวกับหลักสูตรสำหรับคนอื่น ๆ สำหรับผู้ที่ต้องการประหยัดเวลาที่นี่เป็นบทสรุปของฉัน:

สำหรับนักพัฒนาที่ไม่ได้มีเวลาไปดูที่ Zend Framework หลักสูตรนี้ (Zend Framework: พื้นฐาน) เสนอภาพรวมที่ดีของกรอบการแนะนำให้คุณไปยังพื้นที่ที่สำคัญและให้ข้อมูลที่เพียงพอเพื่อที่จะดำเนิน สำหรับผู้ที่ได้ใช้เวลามองที่กรอบและได้ปฏิบัติตามอย่างใดอย่างหนึ่งหรือทั้งสองหลักสูตรนี้สอนไม่ให้มากเกิน

พื้นหลัง

ผมเคย PHP พัฒนาประมาณ 5-6 ปีและได้เริ่มต้นทำงานกับกรอบ Zend บนพื้นฐานองค์ประกอบมากกว่า 6 เดือน ผมได้พัฒนาและ / หรือรับการพัฒนาเกี่ยวกับคู่ของขนาดเล็ก Zend Framework MVC sites.Âฉันจะซื่อสัตย์ฉันไม่ได้มีจำนวนมากของการสัมผัสกับกรอบอื่น ๆ จากจุดที่การเขียนโปรแกรมในมุมมองของ แต่มีการใช้จ่ายหลาย ชั่วโมงการวิจัยเว็บไซต์ของโครงการและประเมินผลการthem.Âกรอบและชุมชนโดยรอบ Zend Framework เป็นที่น่าตื่นเต้นมากและดูเหมือนจะมีความเป็นไปได้อย่างมากในการที่จะไปของมัน

เกี่ยวกับหลักสูตร

แน่นอนจะถูกส่งมากกว่าสองช่วง 9 WebEx ชั่วโมง (ที่มีการแบ่งเวลา 10 นาทีในกลาง) เวลาที่ใช้จะผ่านชุดของภาพนิ่งที่ให้ไว้โดย Zend กับการสนทนาในเวลาใดก็ได้ คุณสามารถใช้ไมโครโฟนเพื่อพูดคุยกับอาจารย์ผู้สอน แต่เพื่อซื่อสัตย์ฉันไม่เห็นอะไรที่ใช้คนมากกว่าหน้าต่างแชท นอกจากนี้เครื่อง VMware อูบุนตูมีให้ที่มีรหัสตัวอย่างและโครงการติดตั้งรุ่นทดลองของ Zend Studio พูดถึงผู้นำหลักสูตรการเข้าร่วมประชุมอย่างใดอย่างหนึ่งมากกว่าโซลูชั่นที่ครบวงจร VoIP หรือคุณสามารถโทรออกในการใช้อย่างใดอย่างหนึ่งตรงทั่วโลกจำนวนมากในตัวเลข

ระหว่างวัสดุที่ประกอบด้วยภาพรวมคร่าวๆของกรอบและรูปแบบ MVC ก่อนที่จะมุ่งหน้าไปสู่​​ตัวอย่างโปรแกรมสมุดเยี่ยมชม การอภิปรายแสดงให้เห็นถึงบูตสแตรป, Zend_Application ตาราง Db, การเข้าถึงฐานข้อมูล, รูปแบบ, กรอง, ACL, ตรวจสอบความถูก ฯลฯ ฯลฯ โดยทั่วไปครอบคลุมหัวข้อทั้งหมดที่คุณต้องการต้องใช้เพื่อให้ได้เว็บไซต์ขั้นพื้นฐานขึ้นทำงานตลอดเวลาให้คุณเครื่องมือในการ ไปและได้รับสูงขึ้นในกรอบ (แม้ว่านี้ได้จำนวนเงินที่ 'ดูเว็บไซต์' มากเวลา)

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

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

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

ความรู้สึกโดยรวม

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

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

ที่กล่าวว่าชื่อหลักสูตรที่ไม่ชัดเจนของรัฐ "Zend Framework: ความรู้พื้นฐาน" และในด้านที่ประสบความสำเร็จแน่นอนสิ่งที่จะกำหนดออกไปทำ สมาชิกคนอื่น ๆ ของทีมพัฒนาที่ยังไม่ได้ใช้เวลามองเข้าไปในกรอบเสร็จแล้วในแต่ละครั้งด้วยความกระตือรือร้นและถามคำถามที่ถูกดีจริงๆที่จะเห็น

ทั้งหมดไม่ได้หายไปมันเป็นที่ดีที่จะใช้เวลาเพื่อยืนยันรายละเอียดพื้นฐานของกรอบและได้รับการขอให้คู่ของคำถามที่อยู่ในพื้นที่ที่ผมไม่ได้ 100% มันก็เป็นเวลาที่ผมได้นั่งลงในแต่ละวันและคิดเกี่ยวกับการเขียนโปรแกรมโดยใช้กรอบโครงการและในอนาคตสิ่งที่ฉันจะไม่เคยจากสามารถที่จะทำอย่างอื่น (คุณสามารถจินตนาการของ บริษัท ตกลงที่จะว่า? :)) สุดท้าย แต่ไม่น้อยคุณยังได้รับการรับรองจากดีจาก Zend ที่จะบอกว่าคุณเข้าร่วมหลักสูตร (แม้ว่าทางอีเมล)

รับรอง Zend Framework

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

ข้อมูลอย่างย่อ

ป.ร. ให้ไว้ทุกอย่างที่ฉันได้เขียนข้างต้นผมจะสรุปทุกอย่างในสองจุด bullet ง่าย:

  • ใหม่ไป Zend Framework: สนามนี้ไม่ว่าสิ่งที่คุณคาดหวังจะช่วยให้คุณแนะนำที่ดีกับกรอบและดินที่ดีบนพื้นฐานที่คุณสามารถสร้าง แน่นอนดูเหมือนว่าจะสร้างความสนใจและความกระตือรือร้นในการกรอบการทำงานในหมู่นักพัฒนา
  • ใช้ Zend Framework: ในขณะที่มันเป็นดีขึ้นฝั่งบางส่วนของพื้นฐานที่ดีผมก็รู้สึกว่าเวลาความพยายามและเงินที่จะใช้หลักสูตรสามารถรับของที่ดีกว่าการใช้จ่ายที่อื่น มันจะดีเพื่อsee Zend สร้างหลักสูตรระดับใหม่สูงกว่าที่จะใช้พัฒนาในระดับต่อไป -. อย่างน้อยถึงมาตรฐานของการรับรองและอยู่นอกเหนือการที่ฉันจะลงทะเบียนได้ทันที

UK ชื่อไดเรกทอรีและการประยุกต์ใช้ Facebook

โดย , วันศุกร์ 10 เมษายน 2009 09:33 น.

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

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

นี่คือตัวอย่างสำหรับชื่อของฉันก็ ลอยด์ Watkin หรือฉันนึกขึ้นได้อย่างถูกต้อง Steven Watkin . ใช้เวลานาทีที่จะ มองขึ้นไปที่ชื่อของคุณ บนไซต์ Tracesmart อาจจะมีที่น่าสนใจ ;)

เรามีข้อมูลสถิติยังชื่อใน สมุดรายชื่อ หน้าซึ่งจะบอกคุณว่าชื่อที่ได้รับการค้นหาและวิธีการที่เมื่อเร็ว ๆ นี้ มันค่อนข้างน่าสนใจที่จะเห็นชื่อบุคคลที่มีชื่อเสียงของสถ​​ิติบินขึ้นเมื่อพวกเขาปรากฏในข่าว ตัวอย่างล่าสุดก็คือว่าจาก Liam Neeson ผู้ที่ภรรยาเสียชีวิตจากอุบัติเหตุเล่นสกีเมื่อเร็ว ๆ นี้แม้จะเห็นได้ชัดที่ผู้คนไม่มากขวาบนสะกด (เพราะฉะนั้นจำนวนมากจากผู้ชมชื่อนี้) - Liam Nilson .

การประยุกต์ใช้ Facebook

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

http://apps.facebook.com/my-name/













ธีมพาโนรามาโดย Themocracy

7 ผู้เข้าชมออนไลน์ในขณะนี้
6 แขก, 1 บอท, 0 สมาชิก
ผู้เข้าชมสูงสุดวันนี้: 14 ที่ 08:21 น. UTC
เดือนนี้: 56 ที่ 25-04-2012 08:41 น. UTC
ในปีนี้: 69 ที่ 27-02-2012 09:56 น. UTC
เวลาทั้งหมด: 130 ที่ 28-03-2011 10:40 UTC