Как противодействовать скликиванию товара?
Мы тоже ломали голову в оптовом инетмагазе. За год выстрадали такую схему:
Например, есть 10 штук некого товара. При добавлении в корзину 4 штуки, для этого же посетителя показывает, что осталось 6 штук, а остальным показывает, что остались всё те же 10 штук, а значит что другой может закинуть в корзину все 10 штук. Ну к примеру, другой чел закидывает 8 штук и резко покупает, а первый находится в корзине и любуеться своим выбором. В этот момент МГНОВЕННО (используя вебсокеты) у первого прямо на глазах происходит драмма - карточка товара, в которой изменились остатки, меняет цвет, красным и перечеркнуто пишется то количество, которое он ранее добавлял ( 4 шт), а количественный input заполняется оставшимися товарами, т.е цифрой 2 
Далее, под товаром пишется грозная надпись, мол по данному товару изменились остатки.
И завершает эту драмму очень грозная надпись, которая появляется перед кнопкой "оформить заказ", мол обратите внимание, что по некоторым товарам из корзины изменились остатки (вдруг там в корзине сотня товаров и на экран они не помещяются).
Эта функция для нас крайне актуальная, т.к. во время рассылки про новый товар на сайт налетает много оптовиков, и без этой функции (мы её именуем "реалтаймовой корзиной") начинался полный ХАОС.
Еще во такой вариант пришел:  интегрировать с 1С, на сайте тогда отключить управление запасами, и уменьшение запаса в базу 1С идет только тогда, когда статус товара — оформлен/оплачен. Это думаю человеческое решение