תיכנות מקבילי בעזרת Start

יום חמישי, מרץ 12, 2015

פירסמתי בעבר מספר פוסטים לגבי השימוש ב-Service Broker להרצה במקביל של מספר תהליכים, והנה עוד אופציה – לשיקולכם. פקודת Start ב-Command Line של Windows מאפשרת להריץ מספר פקודות במקביל, כלומר- אם ניצור קובץ batch ובו מספר פקודות כשלפני כל אחת Start; המערכת תפעיל כל אחת מהן בחלון/Session נפרד, והן ירוצו במקביל. כל זה קשור למערכת ההפעלה ולא ל-SQL Server, אך ניתן להריץ בצורה זו גם פקודות TSQL בעזרת SQLCmd ולהינות מפתרון מעניין שלא כרוך ביצירת אובייקטים וקודים מסובכים יחסית. ניצור קודם כל טבלת לוג כדי לעקוב אחר הפקודות השונות שירוצו במקביל: Create Table Try(ID Int Identity Primary Key Clustered, ...
אין תגובות

הרצה אסינכרונית של פרוצדורות באמצעות Service Broker

יום חמישי, מאי 27, 2010

הפוסט הבא מתבסס על פוסט שפירסמתי בעבר ב-www.SqlServer.co.il. לעיתים אנחנו מעוניינים להריץ פרוצדורה באופן אסינכרוני, כלומר- להריץ אותה ובמקביל להמשיך בטיפול בנושאים אחרים. כל עוד אנחנו עובדים ב-SSMS זו אינה בעייה- פותחים Query חדש, מפעילים שם את הפרוצדורה, ובינתיים חוזרים ל-Query עליו עבדנו וממשיכים בדרכנו; אבל אם רוצים לעשות זאת מתוך פרוצדורה או קוד שרצים אוטומטית- זו קצת בעייה מכיוון שאם נפעיל מתוך פרוצדורה ראשית פרוצדורה משנית – הראשית תמתין עד שהמשנית תסתיים ורק אז תמשיך, שלא לדבר על כך שאם יש תקלה במשנית- גם הראשית תיפול בשל כך.. עד...
אין תגובות