מאגר חיבורים – פיתוח אפליקציות למובייל, שירותי אינטרנט, ארכיטקטורת SOA - טכנולוגיה
דלג לתוכן

חיבור חיבורים - פיתוח אפליקציות למובייל, שירותי אינטרנט, ארכיטקטורת SOA

פרסומות

מה זה איגוד חיבורים?

איגום חיבורים מאפשר שימוש חוזר בחיבורים קיימים כדי להפחית את התקורה של יצירה והפסקה מתמדת של חיבורים בעלי אותה תצורה. במילים אחרות, פתיחה וסגירה של חיבורים המשתמשים באותה מחרוזת חיבור ואישורים יכולים לעשות שימוש חוזר בחיבור זמין במאגר. יישומים טיפוסיים משתמשים באותם אובייקטי חיבור כדי לאחזר ולעדכן נתונים ממסד נתונים ללא הרף. איגום חיבורים מספק רמת ביצועים גבוהה בהרבה על ידי ביטול הצורך של מסד הנתונים ליצור ולשחרר חיבורים כל הזמן. מאגרי חיבור מופרדים לפי תהליך, תחום יישום ומחרוזת חיבור. עבור מחרוזות חיבור המשתמשות באבטחה משולבת, נוצר מאגר נפרד לכל זהות ייחודית.

שליטה באפשרויות איגום חיבורים

מאגר חיבורים מופעל כברירת מחדל בעת יצירת אובייקטי חיבור של ADO.NET. אתה יכול לשלוט בהתנהגות איגום חיבורים (או להשבית לחלוטין את איגום חיבורים) על ידי הגדרת מילות מפתח ספציפיות של מחרוזת חיבורים לאיגור חיבורים. לדוגמה, כדי להשבית באופן ספציפי את איגוד החיבורים, הגדר את Pooling=False במחרוזת החיבור שלך. טבלה 5-7 מספקת רשימה של מילות מפתח של מחרוזת חיבור שניתן להשתמש בהן כדי לשלוט כיצד חיבור ספציפי מקיים אינטראקציה עם מאגר החיבורים. לא כל מילות המפתח זמינות עבור כל הספקים. לדוגמה, ספק OLE DB עוקב אחר איגום חיבורים (הידוע גם כאיגוג משאבים או הפעלות) בהתבסס על הערך שהוגדר עבור מילת המפתח OLE DB Services במחרוזת החיבור.

מחרוזת חיבור לבריכהבנוסף למאפייני מחרוזת חיבור השולטים בהתנהגות איגום חיבורים, קיימות גם שיטות זמינות באובייקטי חיבור שיכולות להשפיע גם על איגום חיבורים. השיטות הזמינות משמשות בדרך כלל כאשר אתה סוגר חיבורים ביישום שלך ואתה יודע שלא ישתמשו בהן שוב. זה מנקה את בריכת החיבורים על ידי השלכת חיבורים במקום החזרתם לבריכה כשהם סגורים. כל חיבור שכבר נמצא בבריכה ופתוחה יימחק בפעם הבאה שהם ייסגרו. טבלה 5-8 מפרטת את השיטות הזמינות לאינטראקציה עם בריכות חיבור.

הגדרת חיבורים לשימוש ב-Connection Pooling

כברירת מחדל, לכל ספקי הנתונים של .NET Framework הזמינים ב-ADO.NET מופעל איגום חיבורים, אך רמת השליטה הזמינה לעבודה עם איגום חיבורים משתנה בהתאם לספק שבו נעשה שימוש.

הגדרת חיבור חיבורים עם חיבורי שרת SQL

כברירת מחדל, האובייקט SqlConnection משתמש אוטומטית ב-pooling חיבורים. בכל פעם שאתה קורא ל-Sqlconnection. פתח עם מחרוזת חיבור ייחודית, נוצר מאגר חדש. שלוט בהתנהגות איגום חיבורים על ידי הגדרת מילות מפתח של מאגר חיבורים במחרוזת החיבור, כפי שתואר קודם לכן בטבלה 5-7. לדוגמה, שקול חיבור שבו אתה רוצה להגדיר את גודל הבריכה המינימלי. על ידי הקצאת ערך גדול מאפס למילת המפתח Mîn Pool Size, אתה מבטיח שהבריכה לא תהרוס עד שהיישום יסתיים. כדי להגדיר את גודל המאגר המינימלי ל-5, השתמש במחרוזת חיבור הדומה לזו הבאה:

מקור נתונים=SqlServerName;Initial Catalog=DatabaseName; אבטחה משולבת = נכון; גודל בריכה מינימלי = 5

גודל המאגר המינימלי הוא 0 כברירת מחדל, מה שאומר שצריך ליצור ולאתחל כל חיבור כמתבקש, הגדלת גודל המאגר המינימלי במחרוזת החיבור, מספר החיבורים המצוין נוצר ומוכן לשימוש, מה שיכול להפחית את הזמן נדרש כדי ליצור את החיבור בחיבורים ראשוניים אלה.

הגדרת חיבור חיבורים עם חיבורי Oracle

חיבורים המשתמשים ב-.NET Framework Data Provider עבור Oracle משתמשים אוטומטית באיגוד חיבורים כברירת מחדל. אתה יכול לשלוט כיצד החיבור משתמש באיגוד על ידי הגדרת מילות מפתח של מחרוזת חיבור. טבלה 5-10 מפרטת את מילות המפתח של מחרוזת החיבור הזמינות לשינוי פעילויות איגום חיבורים.

טיפול בשגיאות חיבור

כאשר SQL Server מחזיר אזהרה או שגיאה, ספק הנתונים של .NET Framework Data for SQL Server יוצר וזורק SqlException שאתה יכול לתפוס ביישום שלך כדי לטפל בבעיה. כאשר ה-SqlException נזרק, בדוק את המאפיין SqlException.Errors כדי לגשת לאוסף השגיאות המוחזרות משרת SQL. המאפיין SqlException.Errors הוא מחלקה SqlErrorCollection (אוסף של מחלקות SqlError) שמכילה תמיד לפחות אובייקט SqlError אחד.

מידע נוסף שגיאות שרת SQL

SqlConnection יישאר פתוח עבור הודעות ברמת חומרה של 19 או פחות, אך בדרך כלל ייסגר אוטומטית כאשר החומרה היא 20 ומעלה.

סיכום

  • מאגר חיבורים מופעל כברירת מחדל.
  • אפשרויות מאגר החיבורים מוגדרות במחרוזת החיבור, למעט ספק ODBC, המשתמש בתיבת הדו-שיח ODBC Data Source Administrator ב-Windows.
  • אובייקט SqlException נוצר כאשר מתגלה שגיאה בשרת SQL.
  • כל מופע של חריג SqlException מכיל לפחות אזהרת SqlError אחת המכילה את פרטי שגיאת השרת בפועל.
  • אימות Windows (נקרא גם אבטחה משולבת) היא השיטה המוצעת לחיבור מאובטח לנתונים.
  • אחסן מחרוזות חיבור המכילות מידע רגיש בקובץ התצורה של האפליקציה והצפין את כל ההגדרות המכילות מידע רגיש.