Клубове Дир.бг
powered by diri.bg
търси в Клубове diri.bg Разширено търсене

Вход
Име
Парола

Клубове
Dir.bg
Взаимопомощ
Горещи теми
Компютри и Интернет
Контакти
Култура и изкуство
Мнения
Наука
Политика, Свят
Спорт
Техника
Градове
Религия и мистика
Фен клубове
Хоби, Развлечения
Общества
Я, архивите са живи
Клубове Дирене Регистрация Кой е тук Въпроси Списък Купувам / Продавам 02:21 24.06.24 
Компютри и Интернет
   >> Бази данни
*Кратък преглед

Страници по тази тема: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | (покажи всички)
Тема май и ти почна като биратанови [re: Goose]  
Автор wiz (100 тонa змей)
Публикувано21.12.08 18:20



май и ти почна като бирата да ме вкарваш във филм които няма нищо общо с реалноста

кво е тва "20К евро за скапано написания код"?

начина с изчакването не отнема допълнителни ресурси щото процеса заспива за малко и не товари машината че да са необходими допълнителни ресурси(за които да се плаща)

разчита се че е все едно за потребителите дали ще чакат половин секунда или хилядна от секундата

така че никви допълнителни 20К евро не са необходими а само да се замислиш малко



No pain, no gain

Тема офнови [re: wiz]  
Автор Dakota (erotoman)
Публикувано06.01.09 13:22



Абе човек, колко хора трябва да ти кажат, че това с изчакването не е решение, за да се съгласиш?

Няма как да знаеш с абсолютна точност колко ще отнеме заявката (процесът от заявки), т.е. колко да е точно това изчакване. Няма начин. Което значи, че по този начин първо, че пилееш безценно процесорно време, понеже чакаш за нещо, за което може и изобщо да не трябва да чакаш, и второ, че не можеш да гарантираш със сигурност, че времето за изчакване няма да е равно на времето за обработка и по този начин отново двама потребителя да попаднат на един и същи запис.

"Договор, подписан с Русия, струва по-малко от хартията, върху която е написан!" - Бисмарк


Тема първо UPDATE и после всичко останалонови [re: bira_more]  
Автор Dakota (erotoman)
Публикувано06.01.09 14:20



Струва ми се, че това вече беше предложено, но все пак и аз да добавя моите 50 стотинки.



Първата, ама най-първата заявка трябва да ти бъде директен UPDATE.

Приемаме, че идентификационният номер на потребителя е 666, можеш да го подаваш като сесийна променлива от PHP, примерно. Полето locked_by_user_sid е уникално (един потребител може да обработва само един запис в един и същи момент).

UPDATE

customer
SET
locked_by_user_sid = 666
WHERE
locked_by_user_sid IS NULL
AND

...

LIMIT
1;


Втората, третата и т.н. заявки вече са от вида:

SELECT


...

FROM
customer

...

WHERE
locked_by_user_sid = 666;


Като свърши работата с дадения запис, се прави:

UPDATE

customer
SET
locked_by_user_sid = NULL
WHERE
locked_by_user_sid = 666;


Това е. С този алгоритъм тук безпроблемно едновременно работеха стотици хора в един call centre. Ключовото е първата ти заявка да бъде незабавен UPDATE, така че следващият потребител да не попадне на същия ред, а да промени друг и т.н.

Иначе като цяло SELECT ... FOR UPDATE наистина изглежда яко, но на практика е възможно 100 човека да зависнат и да чакат за един и същи ред, което пак те връща в изходна позиция.

"Договор, подписан с Русия, струва по-малко от хартията, върху която е написан!" - Бисмарк

Редактирано от Dakota на 06.01.09 17:58.



Тема поредния дето пробва филмнови [re: Dakota]  
Автор wiz (100 тонa змей)
Публикувано06.01.09 16:57



приличаш на поредния дето пробва да ме вкара в някъв филм

и 100 души да дрънкат глупости всеки с по 100 години опит това няма да превърне една глупост в нещо смислено



ясно е че няма как да се знае колко отнема някоя заявка ама със сигурност е рамките на милисекунди на нормални непретоварени машини и когато се чака десети от секундата вероятноста че няма да има проблеми е сравнима с проблеми които се появяват случайно в софтуера...

НЕ СЕ "пилее безценно процесорно време" докато се чака щото поцеса заспива, може да прочетеш

The sleep(3) *nix manpage reads:

DESCRIPTION
sleep() makes the current process sleep until [seconds]
seconds have elapsed or a signal arrives which is not
ignored.

No pain, no gain

Тема случайни грешки в софтуер?!нови [re: wiz]  
Автор Dakota (erotoman)
Публикувано06.01.09 17:55



Еми пич, дай да хвърляме зарове, за какво да пишем софтуер като пак случайно и тайнствено ще се случват някакви неща.



В отговор на:

ясно е че няма как да се знае колко отнема някоя заявка ама със сигурност е рамките на милисекунди на нормални непретоварени машини и когато се чака десети от секундата вероятноста че няма да има проблеми е сравнима с проблеми които се появяват случайно в софтуера...




И откъде тази сигурност, че е в рамките на милисекунди и също, че машината ще стои все "нормална" и непретоварена? Това са си все твои догадки, на базата на които разчиташ софтуерът да работи. И откъде накъде ще караш някой да чака десети от секундата, при положение, че реално работата може да се свърши за милисекунди? Светни ме като си такъв умник, докато процесът "спи" с какво полезно се занимава процесорът, т.е. как точно това време не се пропилява?

Баси... в тоя клуб повечето хора се опитваме да оптимизираме заявките, така че да отнемат минимум време и ресурси, а ти предлагаш точно обратното - да се загубят умишлено и време и ресурси като в резултат да получиш софтуер, със "случайни грешки". Много хитро, няма що.

Предлагам ти вместо да се занимаваш със сложни за теб неща като писането на софтуер, да излезеш навън и да пробваш предложението си на практика.

Качи се в колата и стигни до най-близкото нерегулирано кръстовище на равнозначни пътища и сложи табели от всички страни за колите, като стигнат до кръстовището да чакат по 20 секунди и тогава да минават смело на сляпо и без да гледат (тъй като си измерил, че кръстовището се пресича за време от 5 секунди, т.е. доста по-малко от времето за изчакване - 20 секунди). И така, стигайки до кръстовището чакай 20 секунди и давай смело напред. Според твоята теория в условията на нормално ненатоварено кръстовище най-много случайно да се появи някоя кола и да те отнесе. (Кола, която е пристигнала по същото време на кръстовището като теб и двамата сте чакали 20 секунди или пък която се движи малко по-бавничко и прекосява кръстовището за повече от 5 секунди или пък която вземе, че се развали на средата на кръстовището...). Ама нищо де, то това е напълно случайно, няма да се коркаш. За сметка на това обаче всеки път ще си чакаш там секундите чинно, дори и да няма нито една кола - чудесна организация на движението, смятам, че е уместно да я предложиш на градската управа с цел справяне със задръстванията.

"Договор, подписан с Русия, струва по-малко от хартията, върху която е написан!" - Бисмарк

Редактирано от Dakota на 06.01.09 18:13.



Тема оф не разбралнови [re: Dakota]  
Автор wiz (100 тонa змей)
Публикувано06.01.09 18:52



оф не прочел и не разбрал което съм писал, ето някои неща

случайните грешки са известни, понякога се случва нещо което го няма в кода, много рядко ама го има, пример за тва е когато стане време да се инсталира отново windows ама не е точно същото, има и много други такива примери ама не ми се пише

тва че някои ще чака десети от секундата или милисекунди е без значение за реални хора както е случая

ако не си чувал оптимизиране се препоръчва да се прави само когато наистина е необходимо, когато има bottle neck а не когато някои като теб чел недорабрал дрънка глупости

ресурси на процесора не се пропиляват щото се изпълняват нишки, докато спи едната процесора изпълнява други

ето тва което предлагам описано по твоя начин:
1. отива кола на кръстовище и гледа светофара, ако не свети червено натиска бутон да се смени от жълто в зелено
2. гледа дали не е натиснал някои заедно с него бутон от друга страна на кръстовището
3. ако има едновременно натискане на бутона за зелено този които е натиснал по късно се отказва, лесно става щото при натискане на бутона всеки получава пореден номер
4. след това като вече е светнало зелено минава

сега вече разбра ли?

предлагам вместо да дрънкаш глупости да признаеш че не си прав и да разбереш що не заслужава да пиша друг път тук



No pain, no gain

Тема Re: оф не разбралнови [re: wiz]  
Автор Dakota (erotoman)
Публикувано06.01.09 20:33



В отговор на:

тва че някои ще чака десети от секундата или милисекунди е без значение за реални хора както е случая




Това не е вярно - десетите от секундата са си напълно осезаеми. Ами ако заявката отнема секунда колко ще караш да чакат хората? Минута? Час?

"Договор, подписан с Русия, струва по-малко от хартията, върху която е написан!" - Бисмарк

Тема тва е въпрос на настроикинови [re: Dakota]  
Автор wiz (100 тонa змей)
Публикувано06.01.09 20:44



ми тва е въпрос на настроики на базата и приложението

тези заявки за които става дума в случая са прости и е логично да стават за милисекунди при днешния хардуер, само малоумен може да си пусне базата на калкулатор или да претовари машината че прости update или select да се изпълняват за секунди

може да се мери времето на някоя заявка която не се кешира и по това да се вижда че машината е претоварена и въобше да се отказва обработка, логично е да отказва когато е претоварена

така че случая които описваш не е сериозен или е въпрос на настроика на базата и приложението



No pain, no gain

Тема Re: тва е въпрос на настроикинови [re: wiz]  
Автор bira_more (бира)
Публикувано06.01.09 21:09



Ами все пак става въпрос за разработка.
И се е случвало да генерираме много "интересни" заявки. Не знам дали споменах ама много маймуни работят по клоните.
Та - преглеждаме си и лога с бавните заявки, чистим ги, когато са в нашето поле, иначе докладваме.
Но ги има.

Bеer? Mоre?




Тема друга е целтанови [re: bira_more]  
Автор wiz (100 тонa змей)
Публикувано06.01.09 21:36



ми тва за което пиша е възможно най простите варианти на select и update
някъде май бях писал и формат
така че тва за което пишеш не се отнася за случая

иначе ако все пак измислите такава заявка за този сценарии които обсъждаме може да се коригира и опитимизира кода, заявката и базата така че да става за милисекунди

казано по друг начин не е целта да се покрият всички възможни глупости които може да измислят девелоперите а да се предложи код които върши работа



No pain, no gain


Страници по тази тема: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | (покажи всички)
*Кратък преглед
Клуб :  


Clubs.dir.bg е форум за дискусии. Dir.bg не носи отговорност за съдържанието и достоверността на публикуваните в дискусиите материали.

Никаква част от съдържанието на тази страница не може да бъде репродуцирана, записвана или предавана под каквато и да е форма или по какъвто и да е повод без писменото съгласие на Dir.bg
За Забележки, коментари и предложения ползвайте формата за Обратна връзка | Мобилна версия | Потребителско споразумение
© 2006-2024 Dir.bg Всички права запазени.