Глобальные переменные приложения для Webgarden

2

В настоящее время я пытаюсь запрограммировать онлайн-программу рисования, используя холст HTML5.

Дело в том, что мне нужно, чтобы текущий холст был сохранен где-то во всем мире. Статические переменные работают, но они не распространяются через Webgarden. Это приводит к созданию двух разных чертежей.

Мне нужно каким-то образом создать новый объект приложения, который является общим. Я решил, что мне понадобится внешняя заявка.

1) Как заменить объект приложения на свой собственный?

Так что либо мне придется сделать свою собственную программу и позвонить ей с удалением или использованием сервера состояний сеанса ASP.NET для переменных приложения. Я пользуюсь сервером состояний сеанса.

2) Как использовать сервер состояния сеанса для моих собственных переменных? Как мне получить доступ к нему?

Я искал высоко и низко в Интернете и только нашел идеи, упомянутые выше, но не помогал их выполнению.

Я в основном код в VB.NET, но я также могу понять код С# для примеров.

Немного информации о моем приложении:

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

Когда что-то нарисовано, оно отправляется на сервер в его представлении base64. (GetDataUri)

Сервер помещает этот графический объект поверх сохраненного объекта Bitmap через объект Graphics.

Как изменения распространяются на других клиентов, я сейчас работаю над этим. Либо я передаю полную картину или каждое внесенное изменение. Это должно работать через Server Push. Если это не сработает, мне придется сохранять и изменять временные метки.

Ссылка на текущую реализацию, которая в настоящее время не получает изменения (но они передаются на сервер... С проблемой, что некоторые из них достигают одного экземпляра, некоторые достигают другого на любом w3wp в webgarden), с сервера здесь: http://anno.sinni800.ath.cx/Canvas/Collab

  • 2
    @SLaks, есть также веб-сад, когда вы масштабируете по вертикали.
  • 0
    Ага. Web Garden означает, что у вас есть несколько рабочих процессов на одном компьютере. Помогает, когда у вас более одного процессора.
Теги:
variables
global

1 ответ

3
Лучший ответ

Другой вариант - использовать распределенный кеш, например memcached.

Memcached для Windows
Использование Memchached с asp.net

  • 0
    Выглядит действительно круто Я посмотрю!
  • 0
    Я использовал memcached, и это сработало!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню