Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 21.01.2013, 12:22
Новичок на форуме
Отправить личное сообщение для zenia Посмотреть профиль Найти все сообщения от zenia
 
Регистрация: 21.01.2013
Сообщений: 3

JSON DataSource in Applet
На страницу приходит json около 20000 записей. И нужна была сортировка и поиск в этом монстре (запрос к базе огромный, сервер старый MSSQL7.0 и база не моя).
В общем у меня возникла идея создать простой апплет в котором можно манипулировать данными и доставать от туда нужные куски.

//помещаем json в апплет
myApplet.putdata( "aaa", '[{ id:"1", name:"vasia" },{ id:"1", name:"petia" }]', "backFunction()");

//или просто через ссылку 
//правда почему-то не работает на Safari
myApplet.putfromurl( "aaa", "http://.................../data.php", "backFunction()");


//и затем достаем командой exec
//функция возвращает джсон ввиде текста
myApplet.exec("{ 'select':{table: 'aaa',limit: 300, where:{'col':'name', val:'vasia'}, orderby: {'col':'name', desc:'true'} }}", "backFunction()");

//функция вызывается после выполненния
function backFunction(){alert("Ok")}


и маленький примерчик в index.html


позже, если кому интересно, могу описать все, что умеет этот апплет.
Вложения:
Тип файла: zip test.zip (1.18 Мб, 3 просмотров)
Ответить с цитированием
  #2 (permalink)  
Старый 21.01.2013, 15:37
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

А зачем аплет то? Можно же на JS сделать тоже самое и будет работать оч шустро. К слову я уже давно пишу похожий велосипед на JS: http://collection-js.com (можешь глянуть если интересно).
__________________
kobezzza
code monkey
Ответить с цитированием
  #3 (permalink)  
Старый 21.01.2013, 16:51
Новичок на форуме
Отправить личное сообщение для zenia Посмотреть профиль Найти все сообщения от zenia
 
Регистрация: 21.01.2013
Сообщений: 3

Сообщение от kobezzza Посмотреть сообщение
А зачем аплет то? Можно же на JS сделать тоже самое и будет работать оч шустро.
Конечно скорость JS неплохо подросла но все же бывают тормоза, может это болезнь некоторых броузеров. У меня есть ещё такие кадры с IE 7 А апплет стабильно и быстро, почти моментально сотирует и фильтрует.
Ответить с цитированием
  #4 (permalink)  
Старый 21.01.2013, 19:47
Профессор
Отправить личное сообщение для DjDiablo Посмотреть профиль Найти все сообщения от DjDiablo
 
Регистрация: 04.02.2011
Сообщений: 1,815

а нафига 20000 на клиент приходят
почему нефильтруются ещё на сервере
даже если сервер не ваш то почему тогда ваш сервер не считывает инфу с не вашего сервера, не кеширует, и не фильтрует.

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

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

Последний раз редактировалось DjDiablo, 21.01.2013 в 20:00.
Ответить с цитированием
  #5 (permalink)  
Старый 21.01.2013, 19:58
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

Для современных браузеров 20к не проблема, я сейчас тружусь над 3.9 версией своего велосипеда провожу различные замеры, в общем в среднем нормально можно работать без ключей и разведения по потокам где то до 5-ти миллионов записей, так что 20к ерунда.
__________________
kobezzza
code monkey
Ответить с цитированием
  #6 (permalink)  
Старый 21.01.2013, 20:05
Профессор
Отправить личное сообщение для DjDiablo Посмотреть профиль Найти все сообщения от DjDiablo
 
Регистрация: 04.02.2011
Сообщений: 1,815

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

всё проще, в гриде отобразится 1я сотня, затем юзер вобьёт данные в строку поиск, с сервера придёт одна запись. ENJOY
101 запись меньше чем, 20 000 , 300 000, и тем более 5 миллионов.
непонимаю нафига серверную логику на клиент тянуть.
__________________
Лучше калымить в гандурасе чем гандурасить на колыме

Последний раз редактировалось DjDiablo, 21.01.2013 в 20:07.
Ответить с цитированием
  #7 (permalink)  
Старый 21.01.2013, 20:09
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

Сообщение от DjDiablo Посмотреть сообщение
непонимаю нафига серверную логику на клиент тянуть.
Случаи бывают разные и могу из личного опыта сказать, что когда я работал в Яндекс.Метрике, то у нас были такие задачи для некоторых отчётов.
__________________
kobezzza
code monkey
Ответить с цитированием
  #8 (permalink)  
Старый 21.01.2013, 20:52
Новичок на форуме
Отправить личное сообщение для zenia Посмотреть профиль Найти все сообщения от zenia
 
Регистрация: 21.01.2013
Сообщений: 3

Я понимаю, это изврат 20000 записей, но бывает, что с чужими серверами не охота иметь дело.
Просто на прошлой неделе натолкнулся на обсуждение вашего велосипеда collection-js
и захотелось показать свой джсон костыль (так и назвал JsonDbCrutch-костыль)
В принципе нененужная вещь но всеже жалко выбрасывать, может кому пригодится.
Ответить с цитированием
  #9 (permalink)  
Старый 21.01.2013, 22:25
Профессор
Отправить личное сообщение для DjDiablo Посмотреть профиль Найти все сообщения от DjDiablo
 
Регистрация: 04.02.2011
Сообщений: 1,815

понял
Тогда всё пучком
__________________
Лучше калымить в гандурасе чем гандурасить на колыме
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как достать данные из JSON массива? Dimaz jQuery 15 27.11.2012 20:58
Проблемы с jqGrid и JSON massacra_panda Библиотеки/Тулкиты/Фреймворки 1 08.10.2012 16:44
json данные не грузятся в windows XP но грузятся в w7 rustamaha Элементы интерфейса 2 28.11.2011 11:35
JSON или JSONP для запросов на другой сервер? Метод GET, для длинных сообщений? Kotakota jQuery 5 23.08.2011 23:12
jQuery. Обработка ошибок и JSON. mma_mma jQuery 3 19.07.2010 12:10