اشتراکها
شبیه سازی OAuth2 با Dev Proxy
اشتراکها
مسیرراه فراگیری Rust در سال 2024
نظرات مطالب
مروری بر چند تجربهی کاری با SQLite
چند سال بعد ...!
2- اگر از EF-Core استفاده میکنید، رشتهی اتصالی نهایی آن (که در پشت صحنه تنظیم میشود) به همراه تنظیم فعالسازی کلیدهای خارجی نیز هست و نیازی نیست تا تنظیم foreign keys=true به آن اضافه شود.
3- در بانکهای اطلاعاتی جدید SQLite، حالت WAL فعال است و این مورد دسترسی همزمان به آنرا بدون بروز مشکل قفل بودن بانک اطلاعاتی میسر میکند.
یک نکتهی تکمیلی: اگر از بانک اطلاعاتی SQLite استفاده میکنید، بهتر است از API غیرهمزمان EF-Core، برای کار با آن استفاده نکنید!
توصیه عمومی جهت کار با بانکهای اطلاعاتی، استفاده از API غیرهمزمان (async) آنها برای انجام هر نوع عملیات I/O مرتبط با آنهاست؛ اما ... SQLite، هیچگونه I/O شبکهای را به همراه ندارد و همچنین پشت صحنهی پیاده سازی آن نیز مبتنی بر استفادهی از متدهای متداول همزمان است. برای مثال SQLite جهت پیاده سازی حالت WAL آن، از تابع همزمان ()fsync استفاده میکند و عملا Asynchronous I/O ای در اینجا رخ نمیدهد. یکی از مهمترین مزایای فعال بودن حالت WAL، امکان کار چند ریسمانی با بانک اطلاعاتی SQLite، بدون دریافت خطای «Error: database is locked» است که سبب میشود بتوان از این بانک اطلاعاتی، بدون بروز هیچ مشکلی، در برنامههای وب نیز استفاده کرد.
یعنی API async آن (منظور API ای که توسط EF-Core ارائه میشود)، صرفا یک شبه محصور کنندهی blocking API همزمان آن است (یک async تقلبی!) و بیشتر سبب بروز یک سربار ناخواسته میشود؛ تا اینکه بهبود کارآیی خاصی را به همراه داشته باشد. به همین جهت بهتر است حین کار با بانک اطلاعاتی SQLite، از همان synchronous API معمولی و متداول آن استفاده شود.
اشتراکها
استفاده از AI برای SQL نویسی
اشتراکها
سری مقدماتی هفته نکته دربارهی #C
اشتراکها
راهنمای بهبود SEO تصاویر
اشتراکها
PostgreSQL 17 منتشر شد
PostgreSQL 17 Released — The big one is here. It's the newest major version of Postgres, and it takes a bigger step forward than even v16. Some of what’s new:
- Overhauled memory management for vacuuming, resulting in significantly lower memory usage and running time. More on this here.
- Incremental backup support.
- Faster B-tree index scans.
- MERGE enhancements, including view support.
- New functions to extract elements from UUIDs.
- WAL improvements – up to 2x write throughput on some workloads.
- Improvements to SQL/JSON support, including JSON_TABLE.
- Bulk loading improvements and perf improvements for COPY which gains the ON_ERROR ignore option to ignore errors.
- Identity columns on partitioned tables.
pvq.app
An OSS alternative to StackOverflow which uses the best proprietary and OSS Large Language Models to answer your technical questions. pvq.app is populated with over 1M+ answers for the highest rated StackOverflow questions - checkout pvq.app/leaderboard to find the best performing LLM models (results are surprising!)
اشتراکها