tag:blogger.com,1999:blog-1623745693417995987.comments2022-01-18T17:40:57.028+03:00Бред программистаforcehttp://www.blogger.com/profile/09205548202595699526noreply@blogger.comBlogger262125tag:blogger.com,1999:blog-1623745693417995987.post-80763512184541227952022-01-18T17:40:57.028+03:002022-01-18T17:40:57.028+03:00Спасибо тебе добрый человек!!!!Спасибо тебе добрый человек!!!!Serega280365https://www.blogger.com/profile/17467386735093804545noreply@blogger.comtag:blogger.com,1999:blog-1623745693417995987.post-16683399208133922252020-04-21T12:48:58.540+03:002020-04-21T12:48:58.540+03:00Для того что бы найти, в редактре реестра выбирай ...Для того что бы найти, в редактре реестра выбирай вкладку "Правка"/"Найти", и туда вставляешь либо прописываешь AccelerationAnonymoushttps://www.blogger.com/profile/00114339192169236081noreply@blogger.comtag:blogger.com,1999:blog-1623745693417995987.post-74685526700463418732019-12-23T23:48:50.295+03:002019-12-23T23:48:50.295+03:00Про фабрику у меня уже терпения не хватило написат...Про фабрику у меня уже терпения не хватило написать. Да, HttpClient в целом, даже синглтоном использовать нельзя, надо фабрику делать (отдельный пекедж с пачкой зависимостей).forcehttps://www.blogger.com/profile/09205548202595699526noreply@blogger.comtag:blogger.com,1999:blog-1623745693417995987.post-87511862865517018792019-12-23T19:46:32.261+03:002019-12-23T19:46:32.261+03:00Не надо использовать синглтон
Делайте typed клиент...Не надо использовать синглтон<br />Делайте typed клиенты или фабрику юзайте. Anonymoushttps://www.blogger.com/profile/13184669430742336189noreply@blogger.comtag:blogger.com,1999:blog-1623745693417995987.post-90103853693405887802019-08-26T09:29:12.417+03:002019-08-26T09:29:12.417+03:00Проблема как раз в том, что разные сайты показываю...Проблема как раз в том, что разные сайты показывают разные данные. Кто-то привёл к уровню, кто-то — нет. В результате разница не в 1 мм, а в 10. С учётом телефонов, часов и прочего с погодными виджетами и различными источниками данных. Это может хорошо запутать людей.forcehttps://www.blogger.com/profile/09205548202595699526noreply@blogger.comtag:blogger.com,1999:blog-1623745693417995987.post-545229966843724282019-08-26T00:58:24.933+03:002019-08-26T00:58:24.933+03:00 например гисметео можешь открыть в разделе погода... например гисметео можешь открыть в разделе погода сейчас и к показаниям каждый раз прибавляй 10 мм рт ст и получишь давление на уровне моря .Anonymoushttps://www.blogger.com/profile/13496775354218008609noreply@blogger.comtag:blogger.com,1999:blog-1623745693417995987.post-29678413041279069932019-08-26T00:56:00.050+03:002019-08-26T00:56:00.050+03:00а на уровне станции 763а на уровне станции 763Anonymoushttps://www.blogger.com/profile/13496775354218008609noreply@blogger.comtag:blogger.com,1999:blog-1623745693417995987.post-56104306962121711392019-08-26T00:52:04.665+03:002019-08-26T00:52:04.665+03:0026.08.19 в 00.00 часов в ярославле давление 772 мм...26.08.19 в 00.00 часов в ярославле давление 772 мм рт стAnonymoushttps://www.blogger.com/profile/13496775354218008609noreply@blogger.comtag:blogger.com,1999:blog-1623745693417995987.post-28907952657568569642019-08-26T00:42:48.247+03:002019-08-26T00:42:48.247+03:00тут роль играет не сколько давление а то как оно с...тут роль играет не сколько давление а то как оно себя ведет тут нужна барограмма нужен барограф или хотя бы телефон с датчиком например галакси с3 с4 можно приложение скачать пресуре называется там график есть и по нему уже смотреть , а чтоб при помощи барометра что то понять надо каждые 3 часа записывать показания и выводить их в график и по нему смотреть , начитавшись в интернете оказывается даже выпуклость падения или подъема графика может о многом говорить или график ровный или волнистый , в моем регионе где я живу дождь идет при высоком давление , или 760 а дождь идет так что не простая эта тема график нужен например на гисметео есть график но это не тот график и он не о чем не говорит .Anonymoushttps://www.blogger.com/profile/13496775354218008609noreply@blogger.comtag:blogger.com,1999:blog-1623745693417995987.post-5251539622130036032019-08-26T00:32:46.622+03:002019-08-26T00:32:46.622+03:00атмосферное давление должно быть приведино к уровн...атмосферное давление должно быть приведино к уровню моря , по моим наблюдениям точно указывают атмосферное давление два сайта и одно приложение что касаемо сайтов то это гисметео нужно смотреть в разделе погода сейчас гисметео приводит на уровне станции на которой проходил замер и метео 7 этот сайт указывает в таблице давление на уровне моря и на уровне станции там указанно , самые точные показания конечно у тех кто этим занимается росгидромет есть приложение в плей маркете так и называется там такой сине черный значек приложение конечно стремное но через десяток попыток можно наладить и там точное давление над уровнем моря температура и оповещения ливни ураганы итд , если у вас есть дома барометр то можно по приложению выставить независимо от этажа и всегда будет точно показывать на уровне моря Anonymoushttps://www.blogger.com/profile/13496775354218008609noreply@blogger.comtag:blogger.com,1999:blog-1623745693417995987.post-78910010585341839472019-08-26T00:23:24.361+03:002019-08-26T00:23:24.361+03:00😁😁Anonymoushttps://www.blogger.com/profile/13496775354218008609noreply@blogger.comtag:blogger.com,1999:blog-1623745693417995987.post-33971809369021257932019-08-16T03:49:39.517+03:002019-08-16T03:49:39.517+03:00Высказывая свои точки зрения, различные люди будут...Высказывая свои точки зрения, различные люди будут опираться на разные факты, аксиомы и правила вывода. Без единого подхода обсуждение бессмысленно. <br />Вам надо изменить вопрос, ограничив свободу применения различных "логик". Например, так: "В рамках теории изложенной в "НАСТАВЛЕНИЕ ГИДРОМЕТЕОРОЛОГИЧЕСКИМ СТАНЦИЯМ И ПОСТАМ ВЫПУСК 3 ЧАСТЬ I" какие показания считать более правильными?" и неоднозначность ситуации сразу будет убита.<br />Интересно, как часто обычные жители Ярославля используют значение атмосферного давления в своей жизни? Достаточно ли им неопределенности в 0,1 кПа, или нужно точнее? Мне на вскидку на ум приходит только связь низкого и высокого давления с головной болью. Ради интереса спросите своих знакомых: "Для чего тебе значение атмосферного давления с точностью до 1мм рт.ст.?" и они секунд на десять отключатся от неожиданного вопроса.<br />Тем кому нужно точное значение атмосферного давления, хотят знать его в определенной точке (координаты и высота). Например, при взвешивании на точных весах, когда требуется учитывать выталкивающую силу воздуха, действующую на предмет. Если есть весы II класса точности за 30тр, но нет поверенного барометра за 9тр, можно попытаться, используя вертикальный барический градиент (функция от значения g в точке измерения и плотности воздуха), рассчитать давление на 16 этаже и от уровня моря и от уровня главпочтампта, если бы источники размещали привязку публикуемого значения к высоте. В среднем 12м высоты дают падение на 1 мм рт.ст. Но увы, большинство сайтов публикуют значения, не приведя их к уровню моря (что должно быть по умолчанию) и не указывая отметку, поэтому такой разнобой. Все потому, что точное значение большинству просто НЕ НУЖНО. Что с этим значением делать просто не знают.CoinDensityhttps://www.blogger.com/profile/03951735602058793825noreply@blogger.comtag:blogger.com,1999:blog-1623745693417995987.post-30810121279220424802019-04-10T23:18:58.188+03:002019-04-10T23:18:58.188+03:00Так такая же проблема есть в обычном дот нет. Такж...Так такая же проблема есть в обычном дот нет. Также сокеты заканчиваются, если хттпклиент не статический. Только и у "статического" использования есть своя темная сторона: если не выключить использование кук, то через несколько миллионов запросов дотнет уходит в постоянный гц, т.к. в каждой куке есть DateTimeRomanhttps://www.blogger.com/profile/13856302919538805584noreply@blogger.comtag:blogger.com,1999:blog-1623745693417995987.post-29876096187360757812018-10-22T15:49:28.963+03:002018-10-22T15:49:28.963+03:00В ближайшее время всё будет.В ближайшее время всё будет.forcehttps://www.blogger.com/profile/09205548202595699526noreply@blogger.comtag:blogger.com,1999:blog-1623745693417995987.post-30635214513551856162018-10-22T15:27:50.406+03:002018-10-22T15:27:50.406+03:00Приветствую!
2018F вышел, а прога молчит...Приветствую!<br />2018F вышел, а прога молчит...End Userhttps://www.blogger.com/profile/18266205727511957877noreply@blogger.comtag:blogger.com,1999:blog-1623745693417995987.post-81963092702629271492018-10-10T17:38:47.653+03:002018-10-10T17:38:47.653+03:00А как назвать такое - взял готовую библиотеку, уст...А как назвать такое - взял готовую библиотеку, установил в проект через nuget, работает нормально, но память течет, за месяц примерно до гига на сервере приложений, на моем рабочем буке вроде и не течет. Сделал анализ дампа в windbg, нашел косвенные подтверждения того, что течет сериализатор, написал простыню на гитхаб - ответили "переопредели вот этот класс, замени protobuf на json и все будет норм". Заменить смог только на библиотечныый вариант, т.к. родной DataContractJsonSerializer сходу не смог подружить со строками для перечислений. Память как текла, так и течет. Психанул, скачал исходники, вырезал нахрен protobuf, вырезал нахрен ненужную мне COM-visible, сделал рефакторинг, вырезав ненужные вложенные классы и интерфейсы - перелопатил 200тыс. строк только сгенерированного для protobuf кода. Сумел подружить перечисления с родным сериализатором, вырезал стороннюю библиотеку. Память как текла, так и течет. Скопировал код подписывания (crypt32, все указатели запиненны в GCHandle) - вот где течет, да еще как течет. Сделал рефакторинг, все что мог вынес в конструктор класса, чтобы не создавать лишних указателей - нагрузочный тест теперь дышит ровно на нескольких кругах, проблему очертил. Завтра буду все собирать в рабочий проект, скорее всего еще помечу ненужные мне контракты (точь-в-точь с 1 картинки) и закомментирую. <br />Это не велосипедирование, это что-то другое...Anonymoushttps://www.blogger.com/profile/13874825321027622151noreply@blogger.comtag:blogger.com,1999:blog-1623745693417995987.post-64660552342684763892018-09-02T21:51:55.140+03:002018-09-02T21:51:55.140+03:00Мне волны понравились)Мне волны понравились)Anonymoushttps://www.blogger.com/profile/09483633695681370421noreply@blogger.comtag:blogger.com,1999:blog-1623745693417995987.post-8115892083861791572018-03-01T19:34:39.711+03:002018-03-01T19:34:39.711+03:00Согласен, это не так все просто. И когда я говорю ...Согласен, это не так все просто. И когда я говорю про компрессию, я имею ввиду не только компрессию на базе словарей, но и column compression. <br />И все примерно так, как ты говоришь - да, в БД на диске постоянно образуются дырки. На сколько я понимаю VACUUM операция в PostgreSQL как раз с этим и борется. LSM это другая технология, которая выбирается большинством БД, которая никогда не меняет файлы, а только делать merge нескольких в один больше файл. Backend БД это очень интересная тема. Опять же, рекомендую посмотреть тот набор лекций.<br />Кстати, погуглил - SQL Server 2017 тоже поддерживает Data Compression https://docs.microsoft.com/en-us/sql/relational-databases/data-compression/data-compression, и то же самое "In addition to saving space, data compression can help improve performance of I/O intensive workloads because the data is stored in fewer pages and queries need to read fewer pages from disk."Denis Gladkikhhttps://www.blogger.com/profile/05191772290678566369noreply@blogger.comtag:blogger.com,1999:blog-1623745693417995987.post-11162419882044266152018-03-01T19:19:27.430+03:002018-03-01T19:19:27.430+03:00Пока только про сжатие. Тут ещё нюансы в том, что ...Пока только про сжатие. Тут ещё нюансы в том, что условный блок в 8Кб (размер страницы в MSSQL) при сжатии превратится в условные 4764 байт, соответственно, нельзя просто прочитать 100-ый блок, надо держать их адреса на диске, при этом, если мы чуть изменим данные и они станут 5000 байт, нам придётся писать в другое место, тут будет дырка. Заткнуть эти дырки в целом можно полным перестроением базы.<br />Ну и сжатие по блокам приводит к проблемам, что сжимать мелкие объёмы очень неэффективно, а большие приводят к тому, что при изменении условного бита надо перезаписать весь блок целиком. Тут весьма хорошо проседает перфоманс.<br />Если мы используем аналог Eventual Consistency, то нам чуть легче, если нет — то куча геморроя.forcehttps://www.blogger.com/profile/09205548202595699526noreply@blogger.comtag:blogger.com,1999:blog-1623745693417995987.post-26158693762485315882018-03-01T18:51:26.759+03:002018-03-01T18:51:26.759+03:00То что ты называешь кеш стораджа это отчасти и ест...То что ты называешь кеш стораджа это отчасти и есть те самые данные. Это backend DB. И на самом деле OLTP выигрывает именно из-за другой реализации transactions (или в терминах concurrency control). Hekaton (см https://www.microsoft.com/en-us/research/blog/hekaton-breaks-through/) это был Microsoft Research проект, который и вырос в OLTP, где основная идея была реализовать Multi Version Concurrency Control. <br /><br />Говоря про скорость линейного чтения и IO. Базы данных никогда не читают только одну запись с диска, исторически потому что Spinning Disks. Все происходит на уровне блоков, и сживаются именно блоки по отдельности. Когда тебе нужна одна запись и она находится в блоке, которые не находится в кеше - в этом случае подгрузится весь блок. Поэтому сжимать его имеет большой смысл.<br /><br />Про платность понятно. Реализовать MVCC совсем не просто, поэтому есть буквально несколько нормальных реализаций, и, понятное дело, все хотят на этом заработать. <br /><br />Вообще, очень рекомендую посмотреть курсы лекций от CMU Database Group https://www.youtube.com/channel/UCHnBsf2rH-K7pn09rb3qvkA - выбери любой, например, сейчас идет запись Advanced Database Systems (Spring 2018). Лектор очень классный и необычный. Вообще, я думаю, если бы кто-нибудь разобрался в этом курсе и смог бы на его основе преподавать в ЯрГУ - было бы очень круто. Denis Gladkikhhttps://www.blogger.com/profile/05191772290678566369noreply@blogger.comtag:blogger.com,1999:blog-1623745693417995987.post-86356562047767861062018-03-01T12:35:52.002+03:002018-03-01T12:35:52.002+03:00Не, SQL именно что хранит кеш для стораджа, а не д...Не, SQL именно что хранит кеш для стораджа, а не для данных, они как раз OLTP таблицы сделали, чтобы они в памяти идеально торчали. Они даже на презентации цифры приводили по скорости и памяти (числа уже не помню, но значимые были).<br /><br />Сжатие повышает скорость линейного чтения, но начисто гробит IO, т.е. оно подходит для баз, которые в основном держат в памяти, иначе будет очень плохо (очень тяжёлые чтения и поиск по соответствующим полям). MS SQL умеет сжимать по таблицам, если явно сказать.<br />Собственно, про сжатие я долго могу говорить, у меня архиватор свой есть, я все эти грабли прошёл неоднократно :)<br /><br />Монга - отдельный разговор, с их BSON'ом и желанием всё держать в памяти — это хорошее решение было.<br /><br />По поводу In-Memory Db, думаю, но есть глобальная разница между внутренним кешем или своим правильным кешем и неким абстрактным. Банальный TCP round-trip до сервера очень долгий относительно выдёргивания из локальной памяти приложения. Но зато даёт возможность горизонтального масштабирования.<br />OLTP таблицы MS SQL не использую т.к. он платный и до недавнего времени не было под Linux, что ограничивало применение. За его стоимость проще ресурсов было подбросить :)<br /><br />Может быть в подходящем проекте попробую NoSQL, пока просто в моих и так всё быстро, особого смысла оптимизировать нет.forcehttps://www.blogger.com/profile/09205548202595699526noreply@blogger.comtag:blogger.com,1999:blog-1623745693417995987.post-78049392160269456592018-02-28T21:45:30.070+03:002018-02-28T21:45:30.070+03:00Ну так верно, и тебе будет гораздо больше, чтобы в...Ну так верно, и тебе будет гораздо больше, чтобы в памяти было. Ты же не будешь делать table scan на каждый запрос, тебе нужны будут индексы. Это как раз следующее, что большое должно будет храниться после самих данных.<br /><br />По поводу сжатия данных, на данный момент самое медленное это как раз IO, поэтому проще прочитать меньше с диска и использовать какой-нибудь snappy, чем не сжимать. То, что некоторые базы пока не умеют сжимать - это только показатель того, что скорее всего не сделали еще, и не могут сделать в связи с историческими причинами (см https://www.citusdata.com/blog/2013/04/30/zfs-compression/ - "we demonstrated that ZFS and compression actually improves performance when queries are IO bound"). Посмотри на ту же MongoDB они перешли с MMAP на WiredTiger со сжатием и что получилось.<br /><br />И на самом деле - твоя идея это не бред, это как раз тренд, создание in-memory databases, которые держат данные на диски только для reliability. Просто выбери подходящую, см https://en.wikipedia.org/wiki/List_of_in-memory_databases и как раз Microsoft SQL Server with Hekaton (OLTP) это один из вариантов. Не очень понимаю, почему ты его откидываешь. Потому что тебе придется денормализировать данные? Ну тогда тебе точно дорога в NoSQL ;) Welcome Redis/MongoDB/etc.Denis Gladkikhhttps://www.blogger.com/profile/05191772290678566369noreply@blogger.comtag:blogger.com,1999:blog-1623745693417995987.post-88685840902606178822018-02-28T10:50:22.505+03:002018-02-28T10:50:22.505+03:00Нет, не будет всё в памяти. Во всяком случае у MS ...Нет, не будет всё в памяти. Во всяком случае у MS SQL (ему гораздо больше нужно для того, чтобы всё в памяти было) и у Postgre (он как-то очень странно работает с кешированием)<br />С инвалидацией проблемы есть, со сжатием — SQL базы данных обычно не сжимают данные на диске, если явно не указать (проседает перфоманс сильно), и 20Gb я имел в виду именно несжатых данных.forcehttps://www.blogger.com/profile/09205548202595699526noreply@blogger.comtag:blogger.com,1999:blog-1623745693417995987.post-88089917498331370432018-02-28T01:44:39.118+03:002018-02-28T01:44:39.118+03:00Если ты даш своему DB серверу те самые 20GB - то в...Если ты даш своему DB серверу те самые 20GB - то все и так будет в памяти. Ему не нужно будет выгружать ничего и освобождать память.<br />Если ты попробуешь написать свой собственный кеш, то возникнут проблемы:<br />а) инвалидации<br />б) компрессии, 20 compressed GB on Disk is not the same as uncompressed data in memory. Либо самому нужно писать подходящии compress алгоритмы.<br /><br />В общем, ты просто напишешь свой собственный кеш и столкнешься со всеми проблемами написания этого самого кеш. Denis Gladkikhhttps://www.blogger.com/profile/05191772290678566369noreply@blogger.comtag:blogger.com,1999:blog-1623745693417995987.post-79080136119862444342017-12-10T17:12:02.281+03:002017-12-10T17:12:02.281+03:00двадцать с лишним лет назад лежал в больнице. из к...двадцать с лишним лет назад лежал в больнице. из киева приехал брат, привез мне кубик.за несколько дней собрал, конечно с трудом, не знаю и как. теперь, и давно уже, собираю запросто. причем различными способами.никогда никакими подсказками не пользовался. в моём окружении никто кубик рубика самостоятельно не собирает.<br />Anonymoushttps://www.blogger.com/profile/16826956266882860192noreply@blogger.com