From what i saw fire can be put out even by knights (that or the fire arrows have a chance of failing) also istone walls fall so easy that mining stone seems to be almost a waste of time because building a tower that's both thick enough (kegs and bombs) and tall enough (bombjumps) is so prohibitively expensive and time consuming it's just not worth it.
Kegs blow straight through a certain number of tiles (5 or so?) from the epicenter of the explosion, both horizontally and vertically. The best way to create an efficient defense is to make a tall frontal line of stone (to prevent bombjumping and fire arrows), fill in the next layer or two with wooden blocks, then leave some space and make another thin stone tower, beginning the process again.
If you put enough space between the stone spires, any keg used will take out nothing but a few stone blocks and a bunch of cheap wood. And if you put a high backwall tying the first tower to the second, even if the first tower gets kegged, it won't fall immediately, enabling it to be reclaimed and repaired.
And if you're worried about the wood layers getting burned, you can use a bit more stone to checker the design, alternating stone and wood so any fire arrow used will only burn one wood block.
tl;dr - Smart design is far more efficient and effective than piling up a bunch of stone or wood in front of your base.
... That said, the reason defenses are so easily overwhelmed was actually kind of a design choice; people expressed annoyance at stalemates, so the devs decided to make the game quicker and more easily won.