سلام.
setInterval بهترین راهه و فک نمیکنم راه دیگه ای وجود داشته باشه، بار خیلی قابل توجهی هم روی سرور نداره.
برای سوال دومتون هم بنظرم برای هر المنت یه آی دی خاص جدا تعریف کنید مثلاْ prod-1 prod-2 prod-n و با استفاده از یک setinterval و یک حلقه داخلش این المنت هارو دریافت کنید و مقدارشونو از دیتابیس بگیرید و اپدیت کنید.