-
Notifications
You must be signed in to change notification settings - Fork 0
TR Concept RAM Disk Acceleration
Turkce Dokumantasyon | English Documentation
Kategori: Mimari Kavramlar ve Prensipler
Alt Sistem: Onbellek ve Tampon Motoru (AmberDB::Cache)
Madde Turu: Mimari Kavram
RAM-Disk Paylasimli Bellek Hizlandirmasi, AmberDB'nin dbstore/cache/ dizinine isletim sistemi seviyesinde bir paylasimli bellek dosya sistemi (Linux'ta tmpfs veya Windows'ta ImDisk) baglayarak mikrosaniyenin altinda okuma/yazma erisim surelerine ulasmasini saglayan mimarisidir.
AmberDB standart Berkeley DB (DB_File) hash yapisini kullandigi icin onbellek tek bir Perl surecinin icinde hapsolmaz. Tum paralel web/arkaplan surecleri (Starman, Apache mod_perl, Plack worker'lari) ayni paylasimli bellek dosyalarina eszamanli olarak isletim sistemi page cache ve flock kilitleri uzerinden erisir.
RAM-Disk Cok Surecli Paylasimli Bellek Mimarisi
Perl Worker Sureci 1 Perl Worker Sureci 2 Perl Worker Sureci N
Paylasimli RAM-Disk Alani (/dev/shm veya ImDisk R:)
dbstore/cache/catalog_category.db & .inx (Bellek Ici Hash)
Atomik Onyukleme ($adb->cache_preload)
Kalıcı Fiziksel Depolama Diski (dbstore/tables/*.db)
Tablo semasinda (schema/*.table) yapilandirilir:
-
use_cache => 0: Standart disk erisimi. -
use_cache => 1: Okumalarda TTL sureli (cache_ttl => 3600) dinamik bellek onbelleklemesi. -
use_cache => 2: Kati RAM-Disk Yansitmasi. Tablo ilk acildigindacache_ensure()ile tamamen RAM-diske yuklenir. Tum okumalar dogrudan RAM uzerinden gerceklesir.
# RAM-disk durumu ve baglanti teshisi
my $teshis = $adb->cache_setup();
print "RAM-Disk Bagli: $teshis->{is_mounted} (Boyut: $teshis->{cache_size})\n";
# Cok okunan bir tabloyu (orn: kategoriler) atomik olarak RAM'e onyukle
$adb->cache_preload("catalog_category");
# Onbellekten mikrosaniye seviyesinde oku
my @kategori = $adb->cache_read("catalog_category", 12);AmberDB — High-Performance Schema-Driven NoSQL Database Engine for Perl.
Copyright 2005-2026 Maruf Cetin. Released under the Artistic License 2.0.
CPAN · GitHub Repository · Issue Tracker
- Berkeley DB (DB_File) Engine
- AmberDB Table Schema
- Global Flags
- Table Schema Flags
- Directory Structure
- File Structure (Extensions)
- Repeat Blocks
- Auto-Increment ID
- ASCII ID
- Relational Records
- Record Anatomy
- JOIN-Free Architecture
- Packed Binary Index
- Strict 2PL Locking
- Undo Journal & Rollback
- Tiered Junk Indexing
- Disjunctive Faceting
- Phonetic Accent Search
- 2-Pillar Disaster Recovery
- RAM-Disk Acceleration
- In-Memory Schema Mutation
- Simple Mode
- new
- config
- set_datadir
- insert_id
- insert_list
- modify_id
- modify_list
- delete_id
- delete_list
- read_id
- read_all
- read_list
- exist_id
- exist_list
- exist_table
- table_count
- table_keys
- table_lastid
- table_attr
- table_create
- field_fetch
- field_filter
- search_table
- facet_menu
- field_fltkeys
- field_allfltkeys
- facet_rules
- slug_read
- slug_fetch
- transact_start
- transact_end
- transact_commit
- transact_rollback
- transact_recover
- flock_open
- flock_close
- cache_setup
- cache_read
- cache_write
- cache_delete
- cache_preload
- cache_ensure
- buffer_write
- buffer_read
- buffer_delete
- recs_scan
- recs_get
- recs_put
- recs_del
- locale_uc
- locale_lc
- locale_sort
- locale_to_ascii
- locale_num2text
- locale_format_currency
- locale_format_date
- array_sort
- array_punch
- array_filter
- array_sublist
- deep_copy
- log_owner
- use_counter
- use_junk
- keep_deleted
- auto_id
- buffer_write
- simple
- no_write
- no_backup
- jnktype
- keys_only
- id_type
- language
- .db · .table · .dbase
- .inx · .fld · .src
- .fac · .srt · .slg
- .unq · .del · .aut
- .cnt · .txn · .amberdb
- .csv · .cache · .tmp