LINUX.ORG.RU

BXR.SU: сервис OpenGrok для BSD (IPv6-бета)

 , , , ,


1

2

Сегодня Константин Александрович Муренин (cnst++@FreeBSD) анонсировал запуск нового проекта, BXR.SU — BSD Cross Reference, составляющего из себя модифицированный и улучшенный сервис OpenGrok, переписанный на основе nginx.

Проект запущен в режиме открыто-закрытого тестирования, и в данный момент доступ доступен только по приглашениям; все пользователи, имеющие IPv6, настоящим сообщением приглашаются к тестированию.

В день IPv4, 2013-04-04, у домена будет опубликован адрес IPv4 на один день, в качестве эксперимента. На постоянной основе запись типа A будет опубликована 2013-04-14, а IPv4 glue-records будут опубликованы 2013-04-24. Автор очень волнуется, что у некоторых ISP неправильно настроен IPv4 и NAT, и некоторому проценту посетителей доступ будет проблематичен при преждевременной поддержке IPv4.

Проект отличается от предыдущих установок OpenGrok тем, что поиск работает в 200 раз быстрее (например, чем code.metager.de), а адреса индивидуальных файлов и поисковых запросов являются намного более короткими, понятными и лаконичными.

>>> bxr.su (IPv6)

anonymous

Проверено: tazhate ()

Первый баг-репорт: в маске поиска невозможно выбрать OS. Фильтра OS тоже нет. Ввиду наличия http://fxr.watson.org/ полезность с этими ограничениями сомнительна, пусть оно и в 100500 раз быстрее света.

beastie ★★★★★ ()
Ответ на: комментарий от anonymous

Это мне libastral подсказать должен? В маске этого нет. С таким подходом я и cscope на /usr/src натравить могу. (Точнее я так и делаю.)

beastie ★★★★★ ()
Ответ на: комментарий от beastie

Замечание верное, будем исправлять. Просто там в оригинальном OpenGrok всё на cookies построено, мне пришлось с nginx вырезать, и я пока удалил выбор проектов, т.к. без печений только один по дефолту выбран может быть. //C

anonymous ()

Обожаю такие новости. Почти все слова знакомые, вроде связаны верно, но ничего не понятно. Это уметь надо.

IPR ★★★★★ ()
Ответ на: комментарий от tazhate

АААА что по-твоему одзначает?

AAAA — это тип записи для IPv6 адресов, какие-либо сервера по адресам которых dnswatch.info контактировать не сможет, т.к. у dnswatch отсутствует связность по IPv6.

Не резолвится домен ваш, нсы в луп уходят.

Через IPv4 он и не должен резолвиться, день ещё не наступил. Лупы там на белом месте ваш dnswatch.info нашёл, там лупов даже близко никаких нет.

У меня вчера 64 уникальных посетителя было (один из них — я), и у всех всё резолвится. Что мы все неправильно делаем? :-) //К

anonymous ()
Ответ на: комментарий от anonymous

AAAA — это тип записи для IPv6 адресов, какие-либо сервера по адресам которых dnswatch.info контактировать не сможет, т.к. у dnswatch отсутствует связность по IPv6.

Он может их резолвить, это главное. http://www.dnswatch.info/dns/dnslookup?la=en&host=ipv6.google.com&typ...

Через IPv4 он и не должен резолвиться, день ещё не наступил. Лупы там на белом месте ваш dnswatch.info нашёл, там лупов даже близко никаких нет.

Рукожопие всюду, взять и не делать просто домену А записи, этого достаточно.

У меня вчера 64 уникальных посетителя было (один из них — я), и у всех всё резолвится. Что мы все неправильно делаем? :-) //К

Обалденный трафик! Это успех!

tazhate ★★★★★ ()
Ответ на: комментарий от tazhate

Рукожопие всюду

Согласен, dnswatch.info явно неправильно работает, ещё о каких-то лупах неведомых сообщает.

взять и не делать просто домену А записи, этого достаточно.

А зачем? Как тогда найдешь неправильные резолверы, у которых нет связности по IPv6?

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

Обалденный трафик! Это успех!

Ну так! Для открыто-закрытого тестирования и с ограничением по IPv6, самый раз! История успеха, однако! :-) //К.

anonymous ()
Ответ на: комментарий от anonymous

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

Чиво? Так это тестирование ipv6 или таки тестирование сервиса поиска по исходникам? Вы уж определитесь, К.

tazhate ★★★★★ ()
Ответ на: комментарий от tazhate

Занятия совместимы и не противоречивы. Тестируем и поиск по исходникам, и доступ к IPv6-only доменам. К.

anonymous ()
Ответ на: комментарий от anonymous

Занятия совместимы и не противоречивы. Тестируем и поиск по исходникам, и доступ к IPv6-only доменам. К.

А, ясно теперь, почему у вас так мало пользователей :)
Удачи в тестировании.

tazhate ★★★★★ ()
Ответ на: комментарий от anonymous

Занятия совместимы и не противоречивы. Тестируем и поиск по исходникам, и доступ к IPv6-only доменам. К.

Работает, кстати, и правда очень быстро.

tazhate ★★★★★ ()

Не открывается. В топку.

anonymous ()

Тонко. Благо на нативном IPv6 коннекте из дома всё работает отлично.

Adjkru ★★★★★ ()

1) Ну не везде ещё IPv6, не везде.

2) А что значит «opengrok, переписанный на nginx»? Мне как-то казалось, что opengrok == приложение, а nginx == никак не сервер приложений O_O как его можно переписать на nginx?

vitalif ★★★★★ ()
Ответ на: комментарий от anonymous

лор такой лор - а слабо научить народ у которых пров онли ипв4 выдает научить делать проброс ipv6overip4v, а не йацами своими 6ти угольными трясти?

XXL ()
Ответ на: комментарий от XXL

лор такой лор - а слабо научить народ у которых пров онли ипв4 выдает научить делать проброс ipv6overip4v, а не йацами своими 6ти угольными трясти?

man miredo + google public ipv6 dns

tazhate ★★★★★ ()
Ответ на: комментарий от tazhate

спасибо! но я знаю как и что настроить и не только этим способом :) я про яйцетряство :)

XXL ()
Ответ на: комментарий от vitalif

перепись

1) Ну не везде ещё IPv6, не везде.

Все жалуются, что нет полезных IPv6-only сайтов, и поэтому никому не нужен IPv6. Мы слушаем, и отвечаем. :-)

2) А что значит «opengrok, переписанный на nginx»? Мне как-то казалось, что opengrok == приложение, а nginx == никак не сервер приложений O_O как его можно переписать на nginx?

О директиве rewrite слышал?

# fgrep rewrite bxr.su.conf | wc -l
      64

:-) Там, собственно, половина сайта переписано. :-)

Константин.

cnst ()

У тебя ж опыта больше

составляющего из себя

доступ доступен

Брр, обычно так пишут плохие переводы с неродного и иногда на неродной язык. На этом фоне, определённо, меркнут общие для всей IT-тусовки дефекты речи, а также всякие «более короткими и лаконичными» и «модифицированный и улучшенный». Про смесь канцелярита с чем-то вроде «автор очень волнуется» тут даже и упоминать неловко, да и заклинание «отличающийся тем, что» символизирует :)

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

locke314 ()

мне лично не нужно, но пусть будет. открывается без проблем, ipv6 — сила.

anonymous ()
Ответ на: комментарий от tazhate

Google Public DNS v. ordns.he.net

man miredo + google public ipv6 dns

Необязательно использовать Google Public DNS через IPv6.

У G P D, кстати, где-то год тому назад, даже если самому обращаться через IPv6 (кажись на 2001:4860:4860::8888), их резолверы использовали только IPv4, и IPv6-only домены не работали.

Но теперь таких проблем нет, и можно хоть сам 8.8.8.8 использовать для IPv6-only имён.

Но мне больше нравится 74.82.42.42 (ordns.he.net.), более надёжен, ИМХО.

P.S. Четвёртого числа, разумеется, IPv4 glue никаких не будет, так что будут резолвить только те резолверы, у которых есть IPv6. :-)

cnst ()
Ответ на: комментарий от Reset

Шамана на вас нет подтверждать беты и альфа релизы.

bhfq ★★★★★ ()
Ответ на: комментарий от Alve

re: что это за штука такая

Да объясните же для простого рабочего человека, что это за штука такая :)

Открыт новый сайт типа fxr.watson.org для всех популярных вкусов *BSD, использует модифицированный и улучшенный движок OpenGrok, с некоторыми улучшениями через сервер nginx (директивами rewrite), работает намного быстрее аналогов типа code.metager.de (сайт типа такой, там у них обычный OpenGrok (насколько я знаю), и там на metager поисковые запросы очень часто обрабатываются по восемь секунд).

Домен BXR.SU доступен пока только через настоящие IPv6 соединения, в качестве первоапрельской шутки, и пародии на IPv6-day, и ответа на «никаких полезных IPv6-only сайтов нет», а также для простого способа проверить, является ли ваше IPv6-соединения и DNS резолвер IPv6-only-friendly. И ещё дабы напомнить всем желающим, что домены .su / .ru уже давным давно IPv6-friendly, и позволяют не иметь какого-либо IPv4 подключения — весь домен делегирован исключительно по IPv6.

В общем, прямо-таки всё и сразу. :-)

Лучше?

cnst ()

работает! За 57 миллисекунд нашло 18 файлов содержащих слово «fuck» - причём в одном файле из дерева FreeBSD это слово повторяется аж 47 раз!

Полезная штука в общем.

jekader ★★★★★ ()

+100500 тому кто написал «все слова в отдельности понятны, в целом непонятно ничего» граждане «в теме» - ваттафак из зыс?

shashilx ★★ ()
Ответ на: re: что это за штука такая от cnst

Re: re: что это за штука такая

Так а где посмотреть чего именно ты там в гроке напачтил? Типа форк на гитхабе, чтобы можно было посмотреть дельту и конфиги? Или он улучшенный, с малиновым вкусом, но исходники ты зажмешь, ибо не AGPL?

anonymous ()
Ответ на: Re: re: что это за штука такая от anonymous

Я более года назад это дело форкнул, когда они ещё на hg были, и всяких regressions полно наисправлял (например, какой-то виндузятник добавил игнорирование имён bin и .lib), и кривого ненужного функционала поодключал (historycache стоит в сторонке). Сам уже всю дельту забыл. :-) Буду сейчас уже на github заново форкать, и бакпортить изменения обратно.

Помимо rewrite через nginx, мне очень нравится мой парсер mdoc — в стандартной поставке совершенно кривой парсер, я полностью всю грамматику переписал.

Можно очень легко сравнить:

http://code.metager.de/source/xref/OpenBSD/src/share/man/man4/re.4

http://bxr.su/o/share/man/man4/re.4

Разница — night and day.

Я, кстати, ещё недавно http://mdoc.su/ открыл, и все исходники выложил, в том числе и на github, но никто особо не форкает и не фейворит: https://github.com/cnst/mdoc.su . Может проблема в том, что на LOR'е анонса не делал? :-)

cnst ()

Это они так от школьников огородились? :)

true_admin ★★★★★ ()

Запись типа A для bxr.su опубликована. :-)

cnst ()
Ответ на: комментарий от cnst

Давай-давай, интересно будет посмотреть.

По поводу mdocs, наверное на irc полезно, а так хз. Да и чего там форкать в твоем репозитарии? Просто посмотреть на раз как сделано, может чего-нибудь стянуть... грок-то гораздо интереснее.

Если хочешь, пара комментариев:

listen *:80;
listen [::]:80;

Это всё лишнее, listen 80; и всё. Вот это:

server_name
    mdoc.su
    www.mdoc.su
    *.mdoc.su;

нужно заменить на

server_name .mdoc.su;

Это

if ($host != "mdoc.su") {
    rewrite ^ http://mdoc.su$request_uri? redirect;
}

очень неэффективно на большом трафике. Заведи отдельный сервер с listen 80 default_server; и поставь там в качестве единственной команды redirect 301 http://... .

Остальное несколько замудрено, но, вроде, работает, и ладно =)

anonymous ()
Ответ на: комментарий от anonymous

Ну, блин, тоже мне специалист:

Это всё лишнее, listen 80; и всё.

Тогда IPv6 работать не будет.

server_name .mdoc.su;

Читайте http://nginx.org/ru/docs/http/server_names.html#optimization . В моём случае, так как поддомены практически совсем не используются, как раз лучше использовать именно так, как уже было у меня.

Заведи отдельный сервер с listen 80 default_server

Про `if` — согласен, немного неэффективно, и так делать, вообще-то, официально не рекомендуется. Но про default_server — это вы куда-то переборщили — у меня что, nginx только для mdoc.su используется? Да и вообще, это уж не настолько неэффективно, и трафик у нас всего где-то 1000 уникальных посетителей в неделю максимум, да и то только во время анонсов.

cnst ()
Ответ на: комментарий от cnst

Тогда IPv6 работать не будет.

Ну хорошо, я был не прав, я думал, что

listen       [::]:80  ipv6only=off;

эквивалентно,

listen       80;

но не проверил.

В моём случае, так как поддомены практически совсем не используются, как раз лучше использовать именно так, как уже было у меня.

Но про default_server — это вы куда-то переборщили — у меня что, nginx только для mdoc.su используется?

Тогда эффективней будет сделать один с точным именем, а второй через точку с редиректом, проход по двум хеш-таблицам будет дешевле, чем разбор локаций (коей if, собственно, и является).

anonymous ()
Ответ на: комментарий от anonymous

ipv6only всегда on на OpenBSD; принять IPv4 соединение на IPv6-сокете не получится никогда, вроде как. (Linux, кажись, единственная система, где по умолчанию на IPv6 сокетах всегда IPv4 соединения принимаются.)

Второй server всё равно будет лучше сделать через точное совпадение (вместо точки), т.к. кроме www там, собственно, ничего быть обычно и не должно. Но if просто как-то прикольнее и понятнее, и погоды здесь в любом случае такие вещи не меняют.

cnst ()

Запись типа A для bxr.su опять опубликована. :-)

cnst ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.