Blokada przed uruchamianiem wielu kopii skryptu

pyt Q

A ten mój przykład bazujący na Twoim, to on "czeka koniec pierwszego"? Czyli, czy odpalenie drugiej instancji mojego przykładu czeka na zakończenie pierwszej? Bo IMHO nie Możesz też użyć osobnego skryptu, który będzie sprawdzał czy jest lock na głownym skrypcie, jak jest to go nie wywołuje, a jak nie ma to go wywołuje - mówiąc prościej - sprawdzanie blokady zrealizować w osobnym skrypcie. Coś w ten deseń: Tak, czeka, jeśli jest odpalone na tym samym kompie w tej samej przeglądarce.
W sumie dobry pomysł, popróbowałem trochę z wciąganiem zewnętrznych skryptów, ale nic nie pomogło.
A co do transakcji bazodanowych to owszem, mam do dyspozycji InnoDB, ale co z tego jeśli łączenie do bazy danych jest również zablokowane do czasu zakończenia pierwszego skryptu
pzdr.

odp A

Powodzenia z transakcjami w MyISAM. Tzreba się uczyć porządnych baz a nie internetowych zabawek. nikt nie wspomniał, że to mysql. ale jeśli nawet to InnoDB.
nie nazwałbym mysql zabawką.. ale to nie databases.advocacy
a do Grzegorza: jeśli boisz się że user wciśnie F5, to możesz się zabezpieczyć zmienną sesyjną. czyli: w obrębie sesji sprawdzasz sobie tę zmienną, a w obrębie oddzielnych instancji skryptu twój kod bazujący na tabeli w bazie.
pozdr. R

odp A

On 10 Lis, 19:32, zapzap A ten mój przykład bazujący na Twoim, to on "czeka koniec pierwszego"? Czyli, czy odpalenie drugiej instancji mojego przykładu czeka na zakończenie pierwszej? Bo IMHO nie Tak, czeka, jeśli jest odpalone na tym samym kompie w tej samej przeglądarce. Możesz też użyć osobnego skryptu, który będzie sprawdzał czy jest lock na głownym skrypcie, jak jest to go nie wywołuje, a jak nie ma to go wywołuje - mówiąc prościej - sprawdzanie blokady zrealizować w osobnym skrypcie. Coś w ten deseń: W sumie dobry pomysł, popróbowałem trochę z wciąganiem zewnętrznych skryptów, ale nic nie pomogło. A co do transakcji bazodanowych to owszem, mam do dyspozycji InnoDB, ale co z tego jeśli łączenie do bazy danych jest również zablokowane do czasu zakończenia pierwszego skryptu Grzegorz Pietrzak
Hmm, przyznaję się bez bicia, nie testowałem tego z poziomu przeglądarki, ale zakładając, że:
# cat raz_prosze.php <?php $lockfile = '/tmp/raz_prosze.lock'; /**/ if (file_exists($lockfile)) { echo "Teraz nie moge\n"; exit; } touch($lockfile); sleep(0); unlink($lockfile); ?>
Zachowuje się to tak (z konsoli):
right:~# php raz_prosze.php & [1]
right:~# php raz_prosze.php Teraz nie moge right:~# php raz_prosze.php Teraz nie moge right:~# php raz_prosze.php Teraz nie moge right:~# php raz_prosze.php Teraz nie moge right:~# php raz_prosze.php Teraz nie moge
# ps ax | grep raz_prosze pts/3 S 0:00 php raz_prosze.php
Czyli ja wnioskuję, że _nie_czeka_, ale nie będę się upierał W końcu każdy z nas może pod tym pojęciem rozumieć co innego ;-)
Przenieść procedurę "łączenia do bazy danych" poza obsługę blokad?
Peace.

odp A

Powodzenia z transakcjami w MyISAM. nikt nie wspomniał, że to mysql. ale jeśli nawet to InnoDB.
Tzreba się uczyć porządnych baz a nie internetowych zabawek. nie nazwałbym mysql zabawką.. ale to nie databases.advocacy
Na pewno ma dobry marketing plan: dać tak specyficzne właściwości, żeby komuś nie przychodziło do głowy przenosić tego na inną / przekwalikowywac się. BYŁA szybsza jak nie była obciążona nowymi featurami. genetycznioe rzecz biorąc, baza do szybkiego webowego softu powiedzmy sobie o niskiej 'odpowiedzialności' i złożoności.
Dla mnie poważne bazy, to miały transakcje / view / triggery etc od wieeelu lat, sprawdzone do porzygania. Niestety, ja osobiście nie postawie korporacji na transakcjach które-nikt-nie-wie-jak-naprawdę-działają, nawet jeśli będę je bohatersko uzupełniał podpórkami. W metodykach tworzenia oprogramowania, na 7 istniejących poziomów, zerowy poziom to "by people heroism". Chciałbyś mieć projekt hamulców heroicznie zaprojektowany?
Rozumiem, dla zwolenników wolnego oprogramwoania nie istnieją argumenty spoza tego środowiska, ale zobacz, że ten sam software-house wziął pod swój dach SAP-DB (MaxDB). Są głupcami czy co? Na cholere im wewnętrzna konkurencja?

Dodaj odpowiedź

Tytuł:

Mail: (w celu weryfikacji posta)