Val Petruchek

подписывайтесь, а то хуже будет!  

ПОДПИСЫВАЙТЕСЬ НА RSS

Как удалить фотки из вконтакта

Навеяно материалом с роема.

Пользователь вконтакта:

Больше, чем месяц назад я удалил все свои альбомы с фотографиями. Я не собираюсь их восстанавливать и не хочу, чтобы эти фотографии находились на серверах ВКонтакте, а так же были доступны по прямым ссылкам, например: http://csxxx.vkontakte.ru/uxxxx/xxxxxxx

Саппорт вконтакта:

Фотографии не удаляются с серверов полностью для избежания дефрагментации на них. Данные фотографии доступны исключительно по прямым ссылкам и, соответственно, никто и никогда не сможет их открыть, а нам это тем более не нужно.

Дуров вконтакта:

Если бы для доступа к статике (фотографиям) дергался Apache и PHP (технологии, необходимые для вывода остального контента с авторизацией), то система не прожила бы и минуты даже при 1% текущей нагрузки.

Теоретически проблема решаема, разумеется. Но мы принципиально не делаем шаги, которые нам самим как пользователям не представляются необходимыми. Скажем, за многие годы пользования разными социальными сетями у меня не возникало жгучей потребности проверять какие-то там прямые ссылки. Возникнет - сделаем.

Во-первых, Дуров утверждает, что дёргать php при каждом запросе к каждой фотке, чтобы проверить, есть ли у текущего пользователя доступ к этой конкретной фотке.

Это разумно: выдернуть сессию текущего пользователя, выдернуть информацию о фотке (владелец и его уровни приватности, альбом этой фотки и его публичность) - большой объём работы для такой простой задачи, как отдача одной картинки.

Поэтому, чтобы облегчить жизнь серверам, вконтакте решает проблему по-другому: каждой фотке присваивается неподбираемый URL. Если пользователь узнал этот урл, то значит у пользователя есть доступ к этой фотке.

Если же у пользователя исчезает доступ к фотографии (например, пользователя удаляют из друзей), то этот урл пользователю больше нигде не светится.

Если пользователь каким-то образом сохранил прямой адрес фотки, то он может ею любоваться и дальше. На первый взгляд, это кажется “уязвимостью”, ведь доступа уже быть не должно, а он есть. Но на эту уязвимость можно смотреть по-другому: когда у пользователя появился доступ к фотографии, он мог безболезненно сохранить её себе на жёсткий диск, и продолжать любоваться ею даже после то, как доступ у него заберут. Просто вместо винчестера юзера фотка “сохраняется” на сервере вконтакта.

Т.е. выдачу прав к фотографии надо рассматривать как перманентную, а не временную, тогда и уязвимости никакой нет.

Во-вторых, Дуров пишет, что удалять фотки удалённых аккаунтов получается очень накладно, т.к. повышается фрагментированность жёстких дисков на серверах, поэтому владельцы удалённых аккаунтов должны довольствоваться тем, что урлы их фоток больше нигде светиться не будут, если кто-то сохранил себе урл, то вотку сможеть видеть даже после удаления аккаунта владельца.

В дефрагмегтированность верю, поэтому нежелание удалять фотки понятно - и производительность пострадает, и винты будут умирать быстрее.

А вот почему нельзя вместо удаления просто переименовывать файлы, не понимаю. Помечать таким образом файлы, которые надо удалить, и всё. Старые урлы не работают, файл живёт до тех пор, пока винт не умирает (и при перезеркаливании в рейде эти файлы просто удаляются).

Более того, мои скромные познания в линуксо/юниксах наводят меня на мысль о том, что файлы можно даже не переименовывать, а просто поставить на эти файлы такие права, чтобы пользователь, от имени которого работает вебсервер (nginx небось), не мог их читать.

Вот и всё, и данные “удалены”, и сервера не “дефрагментированы”. Более того, “удалённые” таким образом фотографии могут быть восстановлены, если владелец одумается и вернётся в лоно ВК.

Может я чего-то не понимаю в специфике работы больших сайтов™? Или VK просто душит жаба, что “удалённые” таким образом фотографии будут лежать мёртвым грузом на винтах - и показывать пользователям нельзя, и удалить нельзя (дефрагментация ведь!)?

Unsorted: politics

03.01.12 @ 23:26 — Politics, Ukrainian, Ukraine

Когда в 2005 к власти пришли “оранжевые”, и среди “белоголубых” министров начались самоубийства одно другого малоправдоподобней, я придумал шутку о том, что профессиональное заболевание украинских министров - это “пуля в голове”.

Сейчас, почти 7 лет спустя, словить пулю больше шансов у рядовых банковских работников, чем у министров правительства.

Очень жаль, что тогда, в 2005 экс-министры очень быстро перестали бояться новых метёлок, потому что боеприпасы-то не все израсходовали.

Надежды на полицаев особой нет - “одесский штурм” показал, что органы бесстрашны только против безоружных и желательно пожилых, а в идеале ещё и инвалидов.

А президент проблему личной безопасности граждан решил, и теперь решил заняться более важными проблемами.

Как проверить, в инвизе ли пользователь skype

02.01.12 @ 23:55 — Software, Skype

Очень просто - пишите ему какое-нибудь сообщение, отправляете и ждёте.

Если пользователь в оффлайне, то сообщение не отправится (скайп пока что не доставляет сообщения в/из оффлайн).

Если пользователь в инвизе, то сообщение отправится.

Если не хотите, чтобы оффлайн пользователь узнал, что вы его “проверяете” на невидимость, то надо отключить хранение истории, отправить сообщение, дождаться доставки/недоставки и выйти из своего скайпа.

Удаление сообщения, ожидающего доставки, без отключения истории, не поможет - пользователь получит извещение о том, что вы ему что-то отправили, но удалили (когда вы оба окажетесь в онлайне).

Если не хочется удалять историю сообщений (а отключение истории приводит к её очистке), то можно скопировать (забекапить) профиль скайпа, провести все указанные выше манипуляции и откатиться к сохранённому профилю.

О том, как удалить историю общения с отдельно выбранным контактом - в следующих выпусках.

P.S. Кстати, есть “пассивный” способ узнать, что пользователь в инвизе. Для этого надо работать со скайпом с нескольких клиентов, и чтоб между вами и пользователем был какой-то чат с другого компьютера. Скайп синхронизирует истории (если у другого пользователя включена история) и если он будет в инвизе, то история синхронизируется всё равно.

Почему Рождество празднуют в разные дни

01.01.12 @ 23:55 — Ukraine, Time

Песня для создания настроения:

Как известно, в католических странах рождество празднуют 25 декабря, а в (большинстве) православных - 7 января. Вызвано это тем, что православные церкви до сих пор не перешли на григорианский календарь, по которому живёт весь мир. Православные до сих пор живут по юлианскому.

В юлианском календаре високосными годами являются все года, кратные 4 (средняя продолжительность года = 365,25 суток). В григорианском же года, кратные 100, но не кратные 400, високосными не являются (средняя продолжительность года = 365,2425 суток).

Разные страны переходили с юлианского календаря на григорианский по-разному, у шведов даже как-то 30 февраля случилось из-за забывчивости властей. На википедии много забавных фактов о переходе, почитайте.

А вот пару цитат оттуда:

Во многих храмах, по замыслу создателей, в день весеннего равноденствия Солнце должно попасть в определённое место, например в Соборе святого Петра в Риме — это мозаика.
[…]
Поводом к принятию нового календаря стало постепенное смещение по отношению к юлианскому календарю дня весеннего равноденствия, по которому определялась дата Пасхи, и рассогласование пасхальных полнолуний с астрономическими.

Т.е. на самом деле переход с юлианского на григорианский календарь продвигали католические клерики, потому что “мозаика поломалась”.

А православные попы как всегда оказались особенно твердолобы, и празднуют и Рождество, и Пасху по “старому стилю”, т.е. по юлианскому календарю.

Именно поэтому Рождество у нас 7-го января, а не 25-го декабря. А в следующем веке вообще будет 8-го. Но это конечно если:

  1. православие доживёт до XXII века
  2. твердолобость попов не уменьшится

Сдвинется Рождество на 1 день потому, что 2100 год по григорианскому календарю не будет високосным, а по юлианскому - будет. Старый стиль убежит вперёд от нового ещё на сутки.

Подумалось: как было бы хорошо, если бы на Украине государство перетёрло с ведущими христианскими конфессиями и убедило их перейти на григорианский календарь, чтоб Рождество у нас праздновалось до Нового года, 25 декабря.

И был бы это очень крутой ход по нескольким причинам:

  1. интеграция в “западное культурное пространство”;
  2. празднование Нового Года не приходится на рождественский пост;
  3. 1-е января и 25-е декабря выпадают на один и тот же день недели, поэтому никаких безумных каникул как в песне из начала этого поста.

Такая реформа была бы реальной демонстрацией того, как церковь пытается идти в ногу со временем. Но беда в том, что православная не очень то и пытается, особенно РПЦ и её марионеточная УПЦ (МП).

А без УПЦ (МП) такая реформа на Украине лишена смысла; решись государство на неё без поддержки УПЦ (МП) мы получим не две, а три беспробудных недели пьянства праздников: Новое Рождество, Новый Год, Старое Рождество, Старый Новый Год.

Ещё подумалось: хеллоуин у нас фактически не празднуют; костюмированность от хеллоуина у нас досталась новому году (и то только у детей, взрослых костюмированных праздников у нас нет), а выпрашивание сладостей и проч. - это колядование.

С Новым Годом, кстати.

« Previous Page —   
Реклама::

 
Реклама::