Lebear
If you don't like the world, create one instead of complaining.

商城项目中踩到的坑(Hadoop、Kafka、Zookeeper、redis、hbase、Mysql)

2020-02-03
Word count: 1k | Reading time: 4min

1、前端出现此错误(背景:用springMVC做的数据库增删改查小项目,使用gradle管理,前后端分离两模块;时间20190821)

问题(前后端连接问题)可能原因:

--打开的网址和前端请求网址一致性问题,需要把前端请求网址全字段写出来(如http://localhost:8080(8082服务器端口号)/user/add);

--还要注意后面方法名是否一致(如/queryAll写成了/queryall),注意请求方法前后端一致:get,post,delete,put

--还有Controller层是否加了@CrossOrigin,目的是为了允许跨域访问

--contentType:”application/json”,如果前端像后端传值为json格式(JSON.stringify($(“#form1”).serializeObject())),ajax必须设置这一项,不然也会出现类似错误。


2、数据库连接错误(前端提示为500),此时需要把配置文件中数据库的密码加上单引号  如0412改为’0412’


3、因为前后端分离,然后访问端口的问题

前端还会提示html中的ajax处有错误

仔细观察,的确,Tomcat开的端口号为8082,在配置文件yml中不但到配置,还要在前端访问的url中改写把url=”http:// localhost:8080/user/query”改为url=”http:// localhost:8082/user/query”

端口号与之一致;还有可能就是provider的程序没运行完,然后consumer就开始运行了


4、

Description:(SpringBoot错误)
Failed to configure a DataSource: ‘url‘ attribute is not specified and no embedded datasource could be configured.
Reason: Failed to determine a suitable driver class
Action:
Consider the following:
If you want an embedded database (H2, HSQL or Derby), please put it on the classpath.
If you have database settings to be loaded from a particular profile you may need to activate it (no profiles are currently active).

解决办法:

程序入口处:在间的包下(如com.zhangxujie.consumer中刚建好就有的程序入口类)
@SpringBootApplication
public class DemoApplication {
修改为:
@SpringBootApplication(exclude = DataSourceAutoConfiguration.class)
public class DemoApplication {

-—记得在Service层加@Service注解
-—看看是否 程序入口的 xxxApplication.java 是否在最外层的包下.如果不是,把该类放在最外层的包下面

-—可能包没有扫到,继续添加:

@SpringBootApplication(exclude = DataSourceAutoConfiguration.class,scanBasePackages={ “com.zhangxujie.consumer”})
public class DemoApplication {


5、

Zookeeper服务器问题,可能没有开,或者host中映射关系问题


6、前端顺利向后端传送数据,但是

错误显示出现在ajax

但有异常显示,会发现,我们的model层User未实现序列化(implement Serializable)


7、机器学习启动时候,出现socket error,检查hbase配置中2181端口号是否正确


8、异常处理

2019-11-08 19:51:46.468 ERROR 6372 — [nio-8082-exec-1]

o.a.c.c.C.[.[.[/].[dispatcherServlet]    : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is com.alibaba.dubbo.rpc.RpcException: Forbid consumer 192.168.56.1 access service tk.zhangxujie.api.service.IMyService from registry 192.168.56.3:2181 use dubbo version 2.5.3, Please check registry access list (whitelist/blacklist).] with root cause

com.alibaba.dubbo.rpc.RpcException: Forbid consumer 192.168.56.1 access service tk.zhangxujie.api.service.IMyService from registry 192.168.56.3:2181 use dubbo version 2.5.3, Please check registry access list (whitelist/blacklist).

解决方案:重新启动provider和consumer……


9、异常处理 kafka内存不足

Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x00000000c0000000, 1073741824, 0) failed; error=’Cannot allocate memory’ (errno=12)

解决方法

进入kafka_2.11-0.10.0.1/bin目录下,修改kafka-server-start.sh文件:

找到这一行export KAFKA_HEAP_OPTS=”-Xmx1G -Xms1G”

改为   export KAFKA_HEAP_OPTS=”-Xmx256M -Xms128M”


10、Hadoop和HBase中出现 ssh登录 The authenticity of host 192.168.0.xxx can’t be established

错误是:The authenticity of host 192.168.0.xxx can’t be established.

执行ssh  -o StrictHostKeyChecking=no  192.168.0.xxx


11、hbaseShell异常(正常情况下hbase启动不是独占!!!)hbase启动后,打开hbase shell用list等命令不好使,报异常(org.apache.hadoop.hbase.PleaseHoldException: Master is initializing)。

解决方案:1、 ntpdate 0.cn.pool.ntp.org  //命令更新master和slave时间

       2、先去zoo里启动zkServer然后zkCli启动,从里面用rm /hbase删除节点

       3、hdfs(hadoop) dfs -rm -R /hbase 删除hdfs中的hbase目录


12、init测试redis时候出现

很可能原因,是redisTemplate等对象没有自动装配(@Autowired)


13、login前后端传值Method选择

可能解决方案:把get方法换为post方法

Author: Leisurelybear

Link: https://blog.lebear.top/2020/02/03/11/

Copyright: Copyright © 2019-2022 LeisurelyBear All rights reserved.

< PreviousPost
centos 7 如何添加zookeeper自启动服务
CATALOG