![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 47 Pomógł: 1 Dołączył: 28.10.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam!
Chciałbym się dowiedzieć czy istnieje jakiś efektywny sposób na kolejkowanie skryptom dostępu do pliku. Ogólnie moja sytuacja wygląda tak: Mam 4 skrypty wykorzystujące jeden plik, skrypty mogą działać równocześnie, ale nie muszą, każdy skrypt ma zmienna która mówi o pewnej kolejności Obecnie jeśli plik jest wykorzystywany każdy ze skryptów ma ustawiony jednak w takim wyjściu skrypt o id np 3. odczytuje plik wcześniej niż ten o id 2. Dodatkowym utrudnieniem jest to ze skrypty nie są zawsze uruchamiane wg. kolejności: czyli np. 5 razy pod rzad uruchamiany jest skrypt o id 1, potem uruchamiane są równocześnie skrypty 1,2,3, nastepnie uruchomiony 2-krotnie jest skrypt 2 i jednokrotnie skrypt 1, a na samym końcu skrypt 3. Ogólnie chciałbym aby w czasie jednoczesnego uruchomienia skrypty uzyskiwały dostęp do pliku wg kolejności, a nie w wersji 1-3-2 lub 3-1-2. |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 144 Pomógł: 30 Dołączył: 5.05.2007 Skąd: Mannheim Ostrzeżenie: (0%) ![]() ![]() |
Witam !
Jedyne co mi przychodzi do glowy jako pseudo optymalne rozwiaznie jest uzycie pcntl_fork. Zasymulowanie Threadow ktore dostana dostep do pliku po zwolnieniu przez inny watek. Ale zycze Ci wiele szczescia przy pracy php z watkami. Pozdrawiam Ten post edytował zbig 26.05.2011, 15:14:31 -------------------- Flash Flex PHP JAVA RED5 http://www.easyweb24.net
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 471 Pomógł: 89 Dołączył: 29.07.2008 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
poszedlbym w http://memcachedb.org/memcacheq/
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 47 Pomógł: 1 Dołączył: 28.10.2010 Ostrzeżenie: (0%) ![]() ![]() |
Dzięki za podane rozwiązania, są bardzo interesujące, niestety żadnego z nich w projekcie wykorzystać
![]() muszę działać na w miarę czystym php'ie plus odrobina mysql... i mam pytanie - da się pobrać funkcja php'ową czas uruchomienia się samego skryptu z czegoś a'la logów systemowych...? tzn. nie ile on już działa tylko kiedy zaczął działać Ten post edytował axxxon 26.05.2011, 16:01:33 |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 2 958 Pomógł: 574 Dołączył: 23.09.2008 Skąd: wiesz, że tu jestem? Ostrzeżenie: (0%) ![]() ![]() |
UP: to jest czysty PHP
![]() 1. Plik do którego dostęp mają inne pliki niech nosi nazwę config.php 2. Dla każdego pliku, który ma do niego dostęp nadaj odpowiednie ID np. aaa.php - id = 1 ccc.php - id = 2 bbb.php - id = 3 3. Utwórz plik pomocniczy np. kolejka.txt a w nim: Kod 1 4. W każdym pliku dodaj:
To samo można zrobić na bazie danych ![]() ps. przed rozpoczęciem pętli dodaj set_time_limit(0); żeby ino skrypt nie przestał działać po 30 sekundach ![]() Co do startu pliku.. na początku skryptu wstaw: Ten post edytował CuteOne 26.05.2011, 17:07:02 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 12:39 |