Это простой HTML. В ajax это можно через jQuery метод serialize получить данные всей формы. Можно просто без формы отправить через jQuery запросом вида:
```
$.ajax({
data: {
item: ['first', 'second'],
itemObject: {first: 'first', second: 'second'}
},
method: 'POST',
url: 'remoteHandlerUri'
});
```
Многие базы можно настроить на хорошую запись. Append подход записи данных, когда данные линейно записываются на винт. При этом не происходит чтений, а обновление или удаление представлены в виде новой записи. Как пример - принцип работы sstable у касандры (www.mezhov.com/2013/09/sstable-lsm-tree.html). Читать данные со слейвов, по возможности шардирование данных сделать.
На основании чего вам возврат больше чем по чеку сделают? Если нет модели такой, то ее цена на сегодня не определена конкретно магазином. Можно замены на аналогичный товар требовать.
Веб компоненты, ecmascript6, indexDb, webSocket, nodejs (io.js). Веб развивается достаточно быстро, в том числе и js решения разные, фрейморков только взять сколько модных сейчас react, backbone, angular, ember и тд и тп.
SPA, нет перезагрузок страниц, меняется url (history.api). Чтобы память не текла надо смотреть. По сути это первый шаг в сторону веб приложений с длиноиграющими сессиями. А так ничего такого нет ни в чем нет, просто использование тех или иных подходов и api.
Делать нужно не только шаблонными вариантами, но стоит разные пути попробовать и реально трезво оценить результат. В обоих случаях есть свои плюсы и минусы, есть такая CAP теорема в СУБД, там всегда выбирают что-то 2 из 3. Но нужно здраво понимать все слабые стороны своего выбора, как и сильные.
А мыслить не шаблоно никто не запрещает, напротив, это здорово. Но если нет знания правильного пути, то свое решение может быть банально и быть в корне ошибочным, ввиду не знания всех ньюансов. Многие патерны и подходы формировались долгой тернистой дорогой.