Проект Darkstar Реалистичен?

Проект Darkstar был темой ежемесячной встречи JavaSIG в офисах Google в NYC прошлой ночью. Для тех, кто не знает (вероятно, все), Project Darkstar-это платформа для многопользовательских онлайн-игр, которая пытается позаботиться обо всех "hard stuff." основная идея заключается в том, что вы пишете логику своего игрового сервера таким образом, что все операции разбиваются на крошечные задачи. Вы передаете эти задачи в Project Darkstar framework, который обрабатывает их распределение на определенный узел в кластере, любые проблемы параллелизма и, наконец, сохранение данных.

По-видимому, делать такие вещи-это совсем другая проблема для видеоигр, чем для корпоративных приложений. Джим Уолдо, который читал лекцию, утверждает, что MMO игры имеют отношение DB чтения/записи 50/50,, тогда как корпоративные приложения больше похожи на 90% чтения, 10% записи. Он также утверждает, что большинство существующих MMOs хранят все в памяти exlcusively, и только сбрасывают в DB каждые 6 часов so. Это означает, что если сервер выходит из строя, вы потеряете всю работу с момента последнего дампа DB.

Теперь, сам проект звучит действительно круто,но я не думаю, что индустрия примет его. Во-первых, вы должны написать свой код сервера в Java. Клиентский код может быть написан на чем угодно (Джим утверждает, что ActionScript 3 является самым популярным, а затем C++), но серверный материал должен быть Java. Звучит хорошо для меня, но у меня действительно создается впечатление, что все в игровой индустрии ненавидят Java.

Во-вторых, в отличие от других отраслей, где разработчики предпочитают использовать существующие фреймворки и библиотеки, ребята в игровой индустрии, похоже, любят писать все сами. Мало того, они любят переписывать все для каждой новой игры, которую они производят. Все начинает меняться, когда разработчики используют Havok для физики, Unreal Engine 3 в качестве своей платформы и т. д. но по большей части это выглядит так, как будто все еще является собственностью.

Итак, ребята из проекта Darkstar просто теряют свое время? Может ли общая структура, подобная этой, действительно работать для сложных игр с требуемой производительностью? Даже если это действительно работает, готовы ли игровые компании использовать его?

java   concurrency   distributed    

575   7   21:23, 7th August, 2020


Автоматическое обновление страницы в Opera Mini?

Столкнулся с тем, что Opera Mini автоматически не обновляет страницу.


Пробовал:

1. Через тег <meta http-equiv=«Refresh» content=«300» />

2. Параметр заголовка ответа. refresh: 300

3. Старый дедовский способ window.setTimeout(function(){window.location=«page»}, 300000);

3. Модифицированный дедовский способ window.setTimeout(function(){window.location=«page?fakeparam=xxxxxxxxxx»}, 300000);, где xxxxxxxxxx текущие тикеты

4. Модифицированный первый способ <meta http-equiv=«Refresh» content=«300; URL=page?fakeparam=xxxxxxxxxx» />, где xxxxxxxxxx текущие тикеты


Все методы работают на ББ, но не работают на сотовом… Есть подозрения, что все рендрится на стороне опёровского облака и тупо не отдаётся мобильнику…


Кто нибудь решал подобную проблему?

Opera   Opera   Mini    

327   1   21:18, 7th August, 2020


Совместимость между Windows Vista и Visual Studio 2008

Мне интересно, если кто-то еще испытывает те же проблемы:

Моя основная машина dev-это Dell, работающая под управлением Vista Home Premium и Visual Studio 2008-оба полностью исправлены / up-to-date.

Есть некоторые причуды, такие как элементы управления play/pause media на моей клавиатуре, не работающие во время работы Visual Studio 2008. Такие причуды раздражают, но не очень проблематичны.

Более серьезная проблема заключается в этом:

В одном из моих решений я использую класс под названием Utility . Если я редактирую класс, чтобы добавить другое поле, независимо от того, сколько раз я recompile/clean/manually удаляю старые файлы .DLL , компилятор говорит мне, что такого поля нет. Если, Однако, я проверяю решение в SVN, а затем проверяю его на своем ноутбуке, который запускает Windows XP SP3 с полностью исправленной Visual Studio 2008 - все работает нормально. Понятия не имею, почему.

Кто-нибудь еще испытывал это или другие проблемы с такого рода конфигурацией? И если да, то есть ли у вас какие-либо предложения о том, как их преодолеть?

visual-studio-2008   windows-vista    

546   4   21:16, 7th August, 2020


Использование сторонних библиотек / компонентов в производстве

При использовании сторонних библиотек / компонентов в производственных проектах вы строго относитесь к использованию только выпущенных версий указанных библиотек?

Когда вы планируете использовать предварительную или бета-версию библиотеки (в dev? в производстве, при определенных обстоятельствах)?

Если вы столкнулись с ошибкой или недостатком библиотеки, и вы уже решили ее использовать, вы применяете исправление к библиотеке или создаете обходной путь в своем коде?

dependency-management    

340   5   21:14, 7th August, 2020


Перегруженные функции в файле def C++ DLL

Я пишу C/C++ DLL и хочу экспортировать определенные функции, которые я делал до использования файла .def, как это

LIBRARY "MyLib"
EXPORTS
  Foo
  Bar

например, с кодом, определенным следующим образом:

int Foo(int a);
void Bar(int foo);

Однако, что делать, если я хочу объявить перегруженный метод Foo() как:

int Foo(int a, int b);

Поскольку файл def имеет только имя функции, а не полный прототип, я не вижу, как он будет обрабатывать перегруженные функции. Вы просто используете одну запись и затем указываете, какая перегруженная версия вам нужна при передаче правильно прототипированного указателя функции на LoadLibrary() ?

Изменить: чтобы быть ясным, это на Windows с помощью Visual Studio 2005

Edit: пометил метод non-def (__declspec) как answer...I знаю, что это на самом деле не решает проблему с использованием def-файлов, как я хотел, но кажется, что, скорее всего, нет (официального) решения с использованием def-файлов. Однако оставим этот вопрос открытым, если кто-то знает что-то, что у нас нет перегруженных функций и def-файлов.

c++   c   dll    

558   6   21:04, 7th August, 2020


Как я могу убедиться, что полосы прокрутки не перекрывают содержимое?

При создании прокручиваемых пользовательских элементов управления С.NET и WinForms я неоднократно сталкивался с ситуациями, когда, например, вертикальная полоса прокрутки всплывает, перекрывая содержимое элемента управления, в результате чего также требуется горизонтальная полоса прокрутки. В идеале содержимое будет немного уменьшаться, чтобы освободить место для вертикальной полосы прокрутки.

Мое текущее решение состояло в том, чтобы просто держать мои элементы управления из крайних правых 40 пикселей или так, чтобы вертикальная полоса прокрутки занимала. Поскольку это все еще эффективно клиентское пространство для элемента управления, горизонтальная полоса прокрутки все еще появляется, когда она покрывается вертикальной полосой прокрутки, даже если никакие элементы управления не скрыты вообще. Но тогда, по крайней мере, пользователю не нужно использовать горизонтальную полосу прокрутки, которая появляется.

Есть ли лучший способ заставить все это работать? Какой-то способ сохранить ненужные и нежелательные полосы прокрутки от появления вообще?

.net   winforms    

438   2   20:39, 7th August, 2020


Как показать страницу с frameset, даже если пользователь открыл страницу индивидуального frame (составную часть frameset)?

Предположим у меня есть страница состоящая из 3 frame'ов (классика): шапка, боковое меню и контент.

Пользователям поисковики часто выдают ссылку не на страницу с frameset'ом, а на страницу индивидуального frame'а с контентом.

В результате пользователь не видит шапку и меню, ведь они находятся на других страницах. Как заставить браузер всегда открывать основную страницу с frameset, даже если пользователь открыл в браузере индивидуальный frame.

Веб-разработка    

244   3   20:31, 7th August, 2020


Помогите найти пост с инструкцией по сохранению картинок с google maps?

На хабре было, найти не могу, там было с каким то плагином к Firefox.

Google   Maps    

260   1   20:30, 7th August, 2020